diff options
| author | Pavel Hrdina <phrdina@redhat.com> | 2012-06-13 15:43:11 +0200 |
|---|---|---|
| committer | Kevin Wolf <kwolf@redhat.com> | 2012-06-15 14:03:43 +0200 |
| commit | c52acf60b6c12ff5eb58eb6ac568c159ae0c8737 (patch) | |
| tree | 7ffefd9b9fee15ca9828e3a47913393f6d5e7ff4 /hw/fdc.c | |
| parent | af7b708db2d03eb47f7ba44a050439ad9ee65e7a (diff) | |
| download | focaccia-qemu-c52acf60b6c12ff5eb58eb6ac568c159ae0c8737.tar.gz focaccia-qemu-c52acf60b6c12ff5eb58eb6ac568c159ae0c8737.zip | |
fdc: fix implied seek while there is no media in drive
The Windows uses 'READ' command at the start of an instalation without checking the 'dir' register. We have to abort the transfer with an abnormal termination if there is no media in the drive. Signed-off-by: Pavel Hrdina <phrdina@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'hw/fdc.c')
| -rw-r--r-- | hw/fdc.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/hw/fdc.c b/hw/fdc.c index bfa4e686fa..78b4e3309c 100644 --- a/hw/fdc.c +++ b/hw/fdc.c @@ -159,6 +159,10 @@ static int fd_seek(FDrive *drv, uint8_t head, uint8_t track, uint8_t sect, drv->sect = sect; } + if (drv->bs == NULL || !bdrv_is_inserted(drv->bs)) { + ret = 2; + } + return ret; } |