Commit in reactos/subsys/win32k/ntuser on MAIN
window.c+9-31.205 -> 1.206
IntGetParentObject() does it's own locking, prevent double lock

reactos/subsys/win32k/ntuser
window.c 1.205 -> 1.206
diff -u -r1.205 -r1.206
--- window.c	31 Mar 2004 18:37:12 -0000	1.205
+++ window.c	31 Mar 2004 19:20:18 -0000	1.206
@@ -16,7 +16,7 @@
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
-/* $Id: window.c,v 1.205 2004/03/31 18:37:12 gvg Exp $
+/* $Id: window.c,v 1.206 2004/03/31 19:20:18 gvg Exp $
  *
  * COPYRIGHT:        See COPYING in the top level directory
  * PROJECT:          ReactOS kernel
@@ -2616,7 +2616,6 @@
       return NULL;
    }
   
-   IntLockRelatives(WindowObject);
    switch (Relationship)
    {
       case GW_HWNDFIRST:
@@ -2642,28 +2641,35 @@
          break;
 
       case GW_HWNDNEXT:
+         IntLockRelatives(WindowObject);
          if (WindowObject->NextSibling)
             hWndResult = WindowObject->NextSibling->Self;
+         IntUnLockRelatives(WindowObject);
          break;
 
       case GW_HWNDPREV:
+         IntLockRelatives(WindowObject);
          if (WindowObject->PrevSibling)
             hWndResult = WindowObject->PrevSibling->Self;
+         IntUnLockRelatives(WindowObject);
          break;
 
       case GW_OWNER:
+         IntLockRelatives(WindowObject);
          if((Parent = IntGetWindowObject(WindowObject->Owner)))
          {
            hWndResult = Parent->Self;
            IntReleaseWindowObject(Parent);
          }
+         IntUnLockRelatives(WindowObject);
          break;
       case GW_CHILD:
+         IntLockRelatives(WindowObject);
          if (WindowObject->FirstChild)
             hWndResult = WindowObject->FirstChild->Self;
+         IntUnLockRelatives(WindowObject);
          break;
    }
-   IntUnLockRelatives(WindowObject);
 
    IntReleaseWindowObject(WindowObject);
 
CVSspam 0.2.8