Commit 3bcb80f1af107c25bf8c255f3ca88ac467f27a1a
1 parent
a42aa815
Fix sector size overflow, by Herbert Xu.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2237 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
1 additions
and
1 deletions
hw/fdc.c
| ... | ... | @@ -888,7 +888,7 @@ static void fdctrl_start_transfer (fdctrl_t *fdctrl, int direction) |
| 888 | 888 | fdctrl->data_len = fdctrl->fifo[8]; |
| 889 | 889 | } else { |
| 890 | 890 | int tmp; |
| 891 | - fdctrl->data_len = 128 << fdctrl->fifo[5]; | |
| 891 | + fdctrl->data_len = 128 << (fdctrl->fifo[5] > 7 ? 7 : fdctrl->fifo[5]); | |
| 892 | 892 | tmp = (cur_drv->last_sect - ks + 1); |
| 893 | 893 | if (fdctrl->fifo[0] & 0x80) |
| 894 | 894 | tmp += cur_drv->last_sect; | ... | ... |