Author: hpoussin
Date: Mon Jul 10 02:08:24 2006
New Revision: 22982
URL:
http://svn.reactos.org/svn/reactos?rev=22982&view=rev
Log:
First argument doesn't need to be a physical device object, it only needs to be in a
PDO driver stack.
Modified:
trunk/reactos/ntoskrnl/include/internal/io.h
trunk/reactos/ntoskrnl/io/iomgr/deviface.c
Modified: trunk/reactos/ntoskrnl/include/internal/io.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/…
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/io.h (original)
+++ trunk/reactos/ntoskrnl/include/internal/io.h Mon Jul 10 02:08:24 2006
@@ -542,7 +542,13 @@
VOID
);
-NTSTATUS
+PDEVICE_OBJECT
+NTAPI
+IopGetLowestDevice(
+ IN PDEVICE_OBJECT DeviceObject
+);
+
+NTSTATUS
INIT_FUNCTION
IopInitPlugPlayEvents(VOID);
Modified: trunk/reactos/ntoskrnl/io/iomgr/deviface.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/iomgr/deviface…
==============================================================================
--- trunk/reactos/ntoskrnl/io/iomgr/deviface.c (original)
+++ trunk/reactos/ntoskrnl/io/iomgr/deviface.c Mon Jul 10 02:08:24 2006
@@ -635,6 +635,7 @@
ASSERT_IRQL(PASSIVE_LEVEL);
/* Parameters must pass three border of checks */
+ PhysicalDeviceObject = IopGetLowestDevice(PhysicalDeviceObject);
DeviceObjectExtension =
(PEXTENDED_DEVOBJ_EXTENSION)PhysicalDeviceObject->DeviceObjectExtension;
/* 1st level: Presence of a Device Node */