QEMU 0.10.0 available (Announce)
> I've uploaded "qemu-0.10.0-win32-5.7z", which fixes the floppy drive issue
> by simply reverting r6677 changes.
Thanks! However, a true fix is preferable. The error is rather simple: GetFileSize() won't work with "disk" handles (those "\\.\x:" things).
Here's a possible fix to be applied to file block-raw-win32.c:
-----------------------------------------------------------------------
--- block-raw-win32.co Wed Mar 4 22:54:44 2009
+++ block-raw-win32.c Sat Mar 21 05:51:34 2009
@@ -32,6 +32,7 @@
#define FTYPE_FILE 0
#define FTYPE_CD 1
#define FTYPE_HARDDISK 2
+#define FTYPE_DISK 3
typedef struct BDRVRawState {
HANDLE hfile;
@@ -305,6 +306,7 @@
if (l.LowPart == 0xffffffffUL && GetLastError() != NO_ERROR)
return -EIO;
break;
+ case FTYPE_DISK:
case FTYPE_CD:
if (!GetDiskFreeSpaceEx(s->drive_path, &available, &total, &total_free))
return -EIO;
@@ -402,7 +404,7 @@
if (type == DRIVE_CDROM)
return FTYPE_CD;
else
- return FTYPE_FILE;
+ return FTYPE_DISK;
} else {
return FTYPE_FILE;
}
@@ -411,7 +413,7 @@
static int hdev_open(BlockDriverState *bs, const char *filename, int flags)
{
BDRVRawState *s = bs->opaque;
- int access_flags, create_flags;
+ int access_flags, create_flags, share_flags;
DWORD overlapped;
char device_name[64];
@@ -429,6 +431,10 @@
}
}
s->type = find_device_type(bs, filename);
+ if (s->type == FTYPE_DISK)
+ share_flags = FILE_SHARE_READ | FILE_SHARE_WRITE;
+ else
+ share_flags = FILE_SHARE_READ;
if ((flags & BDRV_O_ACCESS) == O_RDWR) {
access_flags = GENERIC_READ | GENERIC_WRITE;
@@ -447,7 +453,7 @@
else if (!(flags & BDRV_O_CACHE_WB))
overlapped |= FILE_FLAG_WRITE_THROUGH;
s->hfile = CreateFile(filename, access_flags,
- FILE_SHARE_READ, NULL,
+ share_flags, NULL,
create_flags, overlapped, NULL);
if (s->hfile == INVALID_HANDLE_VALUE) {
int err = GetLastError();
-----------------------------------------------------------------------
---
MS-DOS forever!
Complete thread:
- QEMU 0.10.0 available - rr, 05.03.2009, 22:25 (Announce)
- QEMU 0.10.0 available - rr, 06.03.2009, 23:09
- QEMU 0.10.0 available - Japheth, 07.03.2009, 03:57
- QEMU 0.10.0 available - rr, 07.03.2009, 18:27
- QEMU 0.10.0 available - Japheth, 08.03.2009, 11:20
- QEMU 0.10.0 available - rr, 07.03.2009, 18:27
- QEMU 0.10.0 available - rr, 07.03.2009, 21:08
- QEMU 0.10.0 available - Ruslan, 10.03.2009, 19:00
- QEMU 0.10.0 available - Rugxulo, 10.03.2009, 23:05
- QEMU 0.10.0 available - rr, 11.03.2009, 14:37
- QEMU 0.10.0 available - rr, 11.03.2009, 14:45
- QEMU 0.10.0 available - Ruslan, 11.03.2009, 18:36
- QEMU 0.10.0 available - rr, 11.03.2009, 22:55
- QEMU 0.10.0 available - rr, 11.03.2009, 23:10
- QEMU 0.10.0 available - Ruslan, 12.03.2009, 11:35
- QEMU 0.10.0 available - Khusraw, 12.03.2009, 12:21
- QEMU 0.10.0 available - rr, 12.03.2009, 13:15
- QEMU 0.10.0 available - Khusraw, 12.03.2009, 13:20
- QEMU 0.10.0 available - rr, 12.03.2009, 13:25
- QEMU 0.10.0 available - Khusraw, 12.03.2009, 13:20
- QEMU 0.10.0 available - Ruslan, 12.03.2009, 22:07
- QEMU 0.10.0 available - rr, 12.03.2009, 22:21
- QEMU 0.10.0 available - rr, 12.03.2009, 22:54
- QEMU 0.10.0 available - Ruslan, 17.03.2009, 12:28
- QEMU 0.10.0 available - rr, 17.03.2009, 13:33
- QEMU 0.10.0 available - Ruslan, 17.03.2009, 16:35
- QEMU 0.10.0 available - rr, 17.03.2009, 21:20
- QEMU 0.10.0 available - rr, 17.03.2009, 23:11
- QEMU 0.10.0 available - rr, 18.03.2009, 23:08
- QEMU 0.10.0 available - Ruslan, 17.03.2009, 16:35
- QEMU 0.10.0 available - rr, 17.03.2009, 13:33
- QEMU 0.10.0 available - Ruslan, 17.03.2009, 12:28
- QEMU 0.10.0 available - rr, 12.03.2009, 22:54
- QEMU 0.10.0 available - Ruslan, 12.03.2009, 22:23
- QEMU 0.10.0 available - rr, 12.03.2009, 23:01
- QEMU 0.10.0 available - rr, 12.03.2009, 22:21
- QEMU 0.10.0 available - rr, 12.03.2009, 13:15
- QEMU 0.10.0 available - rr, 12.03.2009, 13:17
- QEMU 0.10.0 available - Khusraw, 12.03.2009, 12:21
- QEMU 0.10.0 available - Ruslan, 12.03.2009, 11:35
- QEMU 0.10.0 available - Ruslan, 11.03.2009, 18:36
- QEMU 0.10.0 available - Rugxulo, 10.03.2009, 23:05
- QEMU 0.10.0 available - Ruslan, 10.03.2009, 19:00
- QEMU 0.10.0 available - RayeR, 08.03.2009, 15:51
- QEMU 0.10.0 available - Rugxulo, 09.03.2009, 00:29
- QEMU 0.10.0 available - rr, 09.03.2009, 20:24
- QEMU 0.10.0 available - Rugxulo, 10.03.2009, 01:29
- QEMU 0.10.0 available - rr, 10.03.2009, 08:55
- QEMU 0.10.0 available - rr, 11.03.2009, 23:23
- QEMU 0.10.0 available - Rugxulo, 10.03.2009, 01:29
- QEMU 0.10.0 available - rr, 09.03.2009, 20:24
- QEMU 0.10.0 available - rr, 09.03.2009, 20:21
- QEMU 0.10.0 available - Rugxulo, 09.03.2009, 00:29
- QEMU 0.10.0 available - Japheth, 07.03.2009, 03:57
- Regression in 010 - Japheth, 13.03.2009, 10:27
- Regression in 010 - Ruslan, 13.03.2009, 17:29
- Regression in 010 - rr, 16.03.2009, 22:47
- Regression in 010 - rr, 17.03.2009, 13:44
- QEMU 0.10.0 available + TCG + TCC - DOS386, 15.03.2009, 02:17
- QEMU 0.10.0 available + TCG + TCC - Rugxulo, 15.03.2009, 16:09
- QEMU 0.10.0 available + TCG + TCC - rr, 15.03.2009, 22:03
- QEMU 0.10.0 available - rr, 17.03.2009, 22:55
- QEMU 0.10.0 available - Japheth, 18.03.2009, 10:07
- QEMU 0.10.0 available - rr, 18.03.2009, 11:45
- QEMU 0.10.0 available - Japheth, 18.03.2009, 12:24
- QEMU 0.10.0 available - rr, 18.03.2009, 23:06
- QEMU 0.10.0 available - RayeR, 18.03.2009, 22:40
- QEMU 0.10.0 available - Japheth, 19.03.2009, 05:58
- QEMU 0.10.0 available - rr, 19.03.2009, 09:09
- QEMU 0.10.0 available - Japheth, 19.03.2009, 17:20
- QEMU 0.10.0 available - rr, 19.03.2009, 20:55
- QEMU 0.10.0 available - RayeR, 20.03.2009, 12:13
- QEMU 0.10.0 available - Japheth, 19.03.2009, 17:20
- QEMU 0.10.0 available - rr, 19.03.2009, 09:09
- QEMU 0.10.0 available - Japheth, 18.03.2009, 12:24
- QEMU 0.10.0 available - rr, 18.03.2009, 11:45
- QEMU 0.10.0 available - Japheth, 18.03.2009, 10:07
- QEMU 0.10.0 available - rr, 20.03.2009, 23:01
- QEMU 0.10.0 available - Japheth, 21.03.2009, 07:03
- QEMU 0.10.0 available - rr, 22.03.2009, 22:18
- QEMU 0.10.0 available - Japheth, 21.03.2009, 07:03
- another regression in 0.10.0 - Japheth, 21.03.2009, 11:53
- another regression in 0.10.0 - rr, 22.03.2009, 22:21
- another regression in 0.10.0 - Japheth, 22.03.2009, 22:31
- another regression in 0.10.0 - rr, 22.03.2009, 22:56
- another regression in 0.10.0 - Japheth, 22.03.2009, 22:31
- another regression in 0.10.0 - rr, 23.03.2009, 22:45
- another regression in 0.10.0 - Japheth, 24.03.2009, 03:50
- another regression in 0.10.0 - rr, 24.03.2009, 21:57
- another regression in 0.10.0 - Japheth, 25.03.2009, 08:47
- another regression in 0.10.0 - rr, 24.03.2009, 21:57
- another regression in 0.10.0 - Japheth, 24.03.2009, 03:50
- another regression in 0.10.0 - rr, 22.03.2009, 22:21
- Forward to the past ... v0.9.1 - Japheth, 23.03.2009, 10:05
- Forward to the past ... v0.9.1 - rr, 23.03.2009, 22:47
- Forward to the past ... v0.9.1 - Japheth, 24.03.2009, 03:55
- Forward to the past ... v0.9.1 - rr, 24.03.2009, 22:01
- Forward to the past ... v0.9.1 - Japheth, 24.03.2009, 03:55
- Forward to the past ... v0.9.1 - rr, 23.03.2009, 22:47
- QEMU 0.10.0 available - rr, 06.03.2009, 23:09