From 292eef5acb679a65c5f0fbdee65fb372263d50da Mon Sep 17 00:00:00 2001 From: ths Date: Mon, 19 Feb 2007 00:59:34 +0000 Subject: [PATCH] Ignore special flags in nsector variable. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2436 c046a42c-6fe2-441c-8c8c-71466251a162 --- hw/ide.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/ide.c b/hw/ide.c index 190f07493e..9e5451fb98 100644 --- a/hw/ide.c +++ b/hw/ide.c @@ -794,7 +794,7 @@ static void ide_sector_write(IDEState *s) ret = bdrv_write(s->bs, sector_num, s->io_buffer, n); s->nsector -= n; if (s->nsector == 0) { - /* no more sector to write */ + /* no more sectors to write */ ide_transfer_stop(s); } else { n1 = s->nsector; @@ -1631,12 +1631,12 @@ static void ide_ioport_write(void *opaque, uint32_t addr, uint32_t val) ide_set_irq(s); break; case WIN_SETMULT: - if (s->nsector > MAX_MULT_SECTORS || + if ((s->nsector & 0xff) > MAX_MULT_SECTORS || s->nsector == 0 || (s->nsector & (s->nsector - 1)) != 0) { ide_abort_command(s); } else { - s->mult_sectors = s->nsector; + s->mult_sectors = s->nsector & 0xff; s->status = READY_STAT; } ide_set_irq(s); -- GitLab