Author: sginsberg
Date: Fri Oct 31 08:16:01 2008
New Revision: 37111
URL:
http://svn.reactos.org/svn/reactos?rev=37111&view=rev
Log:
- Don't dereference inside an SEH block after doing unsafe writes, as this could be
missed in case a pointer is bad.
Modified:
trunk/reactos/ntoskrnl/io/iomgr/iocomp.c
Modified: trunk/reactos/ntoskrnl/io/iomgr/iocomp.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/iomgr/iocomp.c…
==============================================================================
--- trunk/reactos/ntoskrnl/io/iomgr/iocomp.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/io/iomgr/iocomp.c [iso-8859-1] Fri Oct 31 08:16:01 2008
@@ -424,9 +424,6 @@
((PIO_COMPLETION_BASIC_INFORMATION)IoCompletionInformation)->
Depth = KeReadStateQueue(Queue);
- /* Dereference the queue */
- ObDereferenceObject(Queue);
-
/* Return Result Length if needed */
if (ResultLength)
{
@@ -439,6 +436,9 @@
Status = _SEH_GetExceptionCode();
}
_SEH_END;
+
+ /* Dereference the queue */
+ ObDereferenceObject(Queue);
}
/* Return Status */