From: ths Date: Sun, 10 Dec 2006 23:07:39 +0000 (+0000) Subject: Fix sector size overflow, by Herbert Xu. X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=3bcb80f1af107c25bf8c255f3ca88ac467f27a1a;p=qemu.git Fix sector size overflow, by Herbert Xu. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2237 c046a42c-6fe2-441c-8c8c-71466251a162 --- diff --git a/hw/fdc.c b/hw/fdc.c index 930c0e21b8..073dafa4c8 100644 --- a/hw/fdc.c +++ b/hw/fdc.c @@ -888,7 +888,7 @@ static void fdctrl_start_transfer (fdctrl_t *fdctrl, int direction) fdctrl->data_len = fdctrl->fifo[8]; } else { int tmp; - fdctrl->data_len = 128 << fdctrl->fifo[5]; + fdctrl->data_len = 128 << (fdctrl->fifo[5] > 7 ? 7 : fdctrl->fifo[5]); tmp = (cur_drv->last_sect - ks + 1); if (fdctrl->fifo[0] & 0x80) tmp += cur_drv->last_sect;