From 705683b52060da6871cf87569d215b521538b41f Mon Sep 17 00:00:00 2001 From: Stefan Ginsberg Date: Fri, 31 Oct 2008 13:16:01 +0000 Subject: [PATCH] - Don't dereference inside an SEH block after doing unsafe writes, as this could be missed in case a pointer is bad. svn path=/trunk/; revision=37111 --- reactos/ntoskrnl/io/iomgr/iocomp.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/reactos/ntoskrnl/io/iomgr/iocomp.c b/reactos/ntoskrnl/io/iomgr/iocomp.c index e2cee39ee14..5c720929578 100644 --- a/reactos/ntoskrnl/io/iomgr/iocomp.c +++ b/reactos/ntoskrnl/io/iomgr/iocomp.c @@ -424,9 +424,6 @@ NtQueryIoCompletion(IN HANDLE IoCompletionHandle, ((PIO_COMPLETION_BASIC_INFORMATION)IoCompletionInformation)-> Depth = KeReadStateQueue(Queue); - /* Dereference the queue */ - ObDereferenceObject(Queue); - /* Return Result Length if needed */ if (ResultLength) { @@ -439,6 +436,9 @@ NtQueryIoCompletion(IN HANDLE IoCompletionHandle, Status = _SEH_GetExceptionCode(); } _SEH_END; + + /* Dereference the queue */ + ObDereferenceObject(Queue); } /* Return Status */