(GDIOBJ_SetOwnership): Don't try to decrease the GDI object counter for global handle...
authorFilip Navara <filip.navara@gmail.com>
Thu, 17 Mar 2005 22:00:19 +0000 (22:00 +0000)
committerFilip Navara <filip.navara@gmail.com>
Thu, 17 Mar 2005 22:00:19 +0000 (22:00 +0000)
svn path=/trunk/; revision=14166

reactos/subsys/win32k/objects/gdiobj.c

index 70190b9..bfb7816 100644 (file)
@@ -1216,15 +1216,18 @@ LockHandle:
 
           /* dereference the process' object counter */
           /* FIXME */
-          Status = PsLookupProcessByProcessId((HANDLE)((ULONG_PTR)PrevProcId & ~0x1), &OldProcess);
-          if(NT_SUCCESS(Status))
+          if((ULONG_PTR)PrevProcId & ~0x1)
           {
-            W32Process = OldProcess->Win32Process;
-            if(W32Process != NULL)
+            Status = PsLookupProcessByProcessId((HANDLE)((ULONG_PTR)PrevProcId & ~0x1), &OldProcess);
+            if(NT_SUCCESS(Status))
             {
-              InterlockedDecrement(&W32Process->GDIObjects);
+              W32Process = OldProcess->Win32Process;
+              if(W32Process != NULL)
+              {
+                InterlockedDecrement(&W32Process->GDIObjects);
+              }
+              ObDereferenceObject(OldProcess);
             }
-            ObDereferenceObject(OldProcess);
           }
 
           if(NewOwner != NULL)