Fixup UnrealizeObject so it can return the correct state for a Brush Object.
Modified: trunk/reactos/subsys/win32k/objects/color.c

Modified: trunk/reactos/subsys/win32k/objects/color.c
--- trunk/reactos/subsys/win32k/objects/color.c	2005-07-19 01:55:16 UTC (rev 16639)
+++ trunk/reactos/subsys/win32k/objects/color.c	2005-07-19 03:13:11 UTC (rev 16640)
@@ -594,14 +594,14 @@
 
    GDIOBJHDR * ptr;
    DWORD objectType;
-
+   BOOL Ret = FALSE;
    UNIMPLEMENTED;
       
    ptr = GDIOBJ_LockObj(hgdiobj, GDI_OBJECT_TYPE_DONTCARE);
    if (ptr == 0)
      {
         SetLastWin32Error(ERROR_INVALID_HANDLE);
-        return FALSE;
+        return Ret;
      }
    objectType = GDIOBJ_GetObjectType(hgdiobj);
    switch(objectType)
@@ -612,9 +612,16 @@
               DPRINT1("GDI_OBJECT_TYPE_PALETTE\n");
               break;
            }
+/*
+    msdn.microsoft.com,
+    "Windows 2000/XP: If hgdiobj is a brush, UnrealizeObject does nothing,
+    and the function returns TRUE. Use SetBrushOrgEx to set the origin of
+    a brush."
+ */
          case GDI_OBJECT_TYPE_BRUSH:
            {
               DPRINT1("GDI_OBJECT_TYPE_BRUSH\n");
+              Ret = TRUE;
               break;
            }
          default:
@@ -623,7 +630,7 @@
      }
 
    GDIOBJ_UnlockObjByPtr(ptr);
-   return FALSE;
+   return Ret;
 }
 
 BOOL STDCALL