cdrom patch

Andreas Mohr andi at rhlx01.fht-esslingen.de
Sun May 19 16:28:08 CDT 2002


Hi all,

- improve error messages
- add error code mapping EPERM -> STATUS_ACCESS_DENIED

-- 
Andreas Mohr                        Stauferstr. 6, D-71272 Renningen, Germany
-------------- next part --------------
Determining best CVS host...
Using CVSROOT :pserver:cvs at rhlx01.fht-esslingen.de:/home/wine
Index: dlls/ntdll/cdrom.c
===================================================================
RCS file: /home/wine/wine/dlls/ntdll/cdrom.c,v
retrieving revision 1.10
diff -u -r1.10 cdrom.c
--- dlls/ntdll/cdrom.c	14 May 2002 23:18:24 -0000	1.10
+++ dlls/ntdll/cdrom.c	19 May 2002 21:27:29 -0000
@@ -134,7 +134,7 @@
             case IDE6_MAJOR: *iface = 6; break;
             case IDE7_MAJOR: *iface = 7; break;
             default:
-                             FIXME("major %d not supported\n", major(st.st_rdev));
+                             FIXME("CD-ROM device with major ID %d not supported\n", major(st.st_rdev));
         }
         *device = (minor(st.st_rdev) == 63 ? 1 : 0);
         return 1;
@@ -304,7 +304,7 @@
         cdrom_cache[dev].fd = open(DRIVE_GetDevice(dev), O_RDONLY|O_NONBLOCK);
         if (cdrom_cache[dev].fd == -1)
         {
-            FIXME("Can't open %s: %s\n", root, strerror(errno));
+            FIXME("Can't open configured CD-ROM drive at %s (device %s): %s\n", root, DRIVE_GetDevice(dev), strerror(errno));
             return -1;
         }
     }
@@ -341,6 +341,8 @@
     case ENOMEDIUM:
 #endif
 	    return STATUS_NO_MEDIA_IN_DEVICE;
+    case EPERM:
+	    return STATUS_ACCESS_DENIED;
     }
     FIXME("Unmapped error code %d: %s\n", errno, strerror(errno));
     return STATUS_IO_DEVICE_ERROR;


More information about the wine-patches mailing list