mountmgr: fix bug 19456

Johan Gill johan.gill at gmail.com
Wed Jul 29 16:30:42 CDT 2009


This patch fixes bug 19456. Alexandre may want to do it differently, since
he has been working on this code, but here it is.

Suggested changelog:
Refresh the volume pointer before passing it to create_dos_device, since it
may have been invalidated

Johan Gill
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20090729/1a21b151/attachment.htm>
-------------- next part --------------
diff --git a/dlls/mountmgr.sys/device.c b/dlls/mountmgr.sys/device.c
index 03b1f89..14755cb 100644
--- a/dlls/mountmgr.sys/device.c
+++ b/dlls/mountmgr.sys/device.c
@@ -742,6 +742,10 @@ NTSTATUS add_dos_device( int letter, const char *udi, const char *device,
         }
     }
 
+    /* The volume might have been deleted after the previous call to
+       find_matching_volume, so check for it again */
+    volume = find_matching_volume( udi, device, mount_point, type );
+
     if ((status = create_dos_device( volume, udi, letter, type, &drive ))) goto done;
 
 found:


More information about the wine-patches mailing list