- Implement IoReportTargetDeviceChange as a wrapper around the unimplemented IoReport...
authorStefan Ginsberg <stefanginsberg@gmail.com>
Mon, 18 Aug 2008 13:31:33 +0000 (13:31 +0000)
committerStefan Ginsberg <stefanginsberg@gmail.com>
Mon, 18 Aug 2008 13:31:33 +0000 (13:31 +0000)
svn path=/trunk/; revision=35428

reactos/ntoskrnl/io/pnpmgr/pnpreport.c

index e11c4b0..d7b6d71 100644 (file)
@@ -119,8 +119,27 @@ NTAPI
 IoReportTargetDeviceChange(IN PDEVICE_OBJECT PhysicalDeviceObject,
                            IN PVOID NotificationStructure)
 {
-    UNIMPLEMENTED;
-    return STATUS_NOT_IMPLEMENTED;
+    KEVENT Event;
+    NTSTATUS Status;
+
+    /* Initialize the event */
+    KeInitializeEvent(&Event, NotificationEvent, FALSE);
+
+    /* Call the asynchronous version */
+    Status = IoReportTargetDeviceChangeAsynchronous(PhysicalDeviceObject,
+                                                    NotificationStructure,
+                                                    IopClearEvent,
+                                                    &Event);
+
+    /* Only wait if we succeeded */
+    if (NT_SUCCESS(Status))
+    {
+        /* Wait for it to complete */
+        KeWaitForSingleObject(&Event, Executive, KernelMode, FALSE, NULL);
+    }
+
+    /* Return status */
+    return Status;
 }
 
 /*