Everything must come to an end, even the desktop window. Fixes bug 805.
Modified: trunk/reactos/subsys/win32k/ntuser/window.c
_____
Modified: trunk/reactos/subsys/win32k/ntuser/window.c
--- trunk/reactos/subsys/win32k/ntuser/window.c 2005-10-17 21:48:12 UTC
(rev 18533)
+++ trunk/reactos/subsys/win32k/ntuser/window.c 2005-10-17 21:57:02 UTC
(rev 18534)
@@ -2035,7 +2035,7 @@
ASSERT_REFS_CO(Window); //fixme: temp hack?
/* Check for owner thread and desktop window */
- if ((Window->OwnerThread != PsGetCurrentThread()) ||
IntIsDesktopWindow(Window))
+ if ((Window->OwnerThread != PsGetCurrentThread()))
{
SetLastWin32Error(ERROR_ACCESS_DENIED);
return FALSE;
@@ -2103,7 +2103,8 @@
HWND *ChildHandle;
PWINDOW_OBJECT Child, Desktop;
- Desktop = UserGetWindowObject(IntGetDesktopWindow());
+ Desktop = IntIsDesktopWindow(Window) ? Window :
+ UserGetWindowObject(IntGetDesktopWindow());
Children = IntWinListChildren(Desktop);
if (Children)
Show replies by date