Add hack for ROS's weird behavior. Will investigate but this lets you boot for now
Modified: trunk/reactos/ntoskrnl/io/irp.c

Modified: trunk/reactos/ntoskrnl/io/irp.c
--- trunk/reactos/ntoskrnl/io/irp.c	2005-04-30 17:37:11 UTC (rev 14883)
+++ trunk/reactos/ntoskrnl/io/irp.c	2005-04-30 17:43:18 UTC (rev 14884)
@@ -1288,7 +1288,10 @@
             /* Dereference the Event if this is an ASYNC IRP */
             if (!Irp->Flags & IRP_SYNCHRONOUS_API)
             {
-                ObDereferenceObject(Irp->UserEvent);
+                if (Irp->UserEvent != &FileObject->Event)
+                {
+                    ObDereferenceObject(Irp->UserEvent);
+                }
             }
             
             /* If the File Object is SYNC, then we need to signal its event too */
@@ -1382,7 +1385,10 @@
         /* Dereference the Event if it's an ASYNC IRP on a File Object */
         if (Irp->UserEvent && !(Irp->Flags & IRP_SYNCHRONOUS_API) && FileObject)
         {
-            ObDereferenceObject(Irp->UserEvent);
+            if (Irp->UserEvent != &FileObject->Event)
+            {
+                ObDereferenceObject(Irp->UserEvent);
+            }   
         }
         
         /* Dereference the File Object */