Commit in reactos on MAIN
include/win32k/ntuser.h+31.122 -> 1.123
lib/user32/windows/window.c+3-41.104 -> 1.105
subsys/win32k/ntuser/window.c+7-31.208 -> 1.209
+13-7
3 modified files
partially implemented IsHungAppWindow()

reactos/include/win32k
ntuser.h 1.122 -> 1.123
diff -u -r1.122 -r1.123
--- ntuser.h	2 Apr 2004 22:16:08 -0000	1.122
+++ ntuser.h	2 Apr 2004 23:54:26 -0000	1.123
@@ -1065,6 +1065,9 @@
   DWORD Unknown3,
   DWORD Unknown4);
 
+#define QUERY_WINDOW_UNIQUE_PROCESS_ID	0x00
+#define QUERY_WINDOW_UNIQUE_THREAD_ID	0x01
+#define QUERY_WINDOW_ISHUNG	0x04
 DWORD
 STDCALL
 NtUserQueryWindow(

reactos/lib/user32/windows
window.c 1.104 -> 1.105
diff -u -r1.104 -r1.105
--- window.c	2 Apr 2004 22:16:09 -0000	1.104
+++ window.c	2 Apr 2004 23:54:26 -0000	1.105
@@ -1,4 +1,4 @@
-/* $Id: window.c,v 1.104 2004/04/02 22:16:09 weiden Exp $
+/* $Id: window.c,v 1.105 2004/04/02 23:54:26 weiden Exp $
  *
  * COPYRIGHT:       See COPYING in the top level directory
  * PROJECT:         ReactOS user32.dll
@@ -1456,14 +1456,13 @@
 }
 
 /*
- * @unimplemented
+ * @implemented
  */
 BOOL
 STDCALL
 IsHungAppWindow(HWND hwnd)
 {
-  /* FIXME: ReactOS doesnt identify hung app windows yet */
-  return FALSE;
+  return (NtUserQueryWindow(hwnd, QUERY_WINDOW_ISHUNG) != 0);
 }
 
 /*

reactos/subsys/win32k/ntuser
window.c 1.208 -> 1.209
diff -u -r1.208 -r1.209
--- window.c	2 Apr 2004 20:51:08 -0000	1.208
+++ window.c	2 Apr 2004 23:54:26 -0000	1.209
@@ -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.208 2004/04/02 20:51:08 weiden Exp $
+/* $Id: window.c,v 1.209 2004/04/02 23:54:26 weiden Exp $
  *
  * COPYRIGHT:        See COPYING in the top level directory
  * PROJECT:          ReactOS kernel
@@ -3200,14 +3200,18 @@
 
    switch(Index)
    {
-      case 0x00:
+      case QUERY_WINDOW_UNIQUE_PROCESS_ID:
          Result = (DWORD)IntGetWndProcessId(Window);
          break;
 
-      case 0x01:
+      case QUERY_WINDOW_UNIQUE_THREAD_ID:
          Result = (DWORD)IntGetWndThreadId(Window);
          break;
 
+      case QUERY_WINDOW_ISHUNG:
+         Result = (DWORD)MsqIsHung(Window->MessageQueue);
+         break;
+
       default:
          Result = (DWORD)NULL;
          break;
CVSspam 0.2.8