IsHungAppWindow(a ghost window) == TRUE. CORE-11944
BOOL WINAPI
IsHungAppWindow(HWND hwnd)
{
BOOL WINAPI
IsHungAppWindow(HWND hwnd)
{
+ UNICODE_STRING ClassName;
+ WCHAR szClass[16];
+ static const UNICODE_STRING GhostClass = RTL_CONSTANT_STRING(L"Ghost");
+
+ /* Ghost is a hung window */
+ RtlInitEmptyUnicodeString(&ClassName, szClass, sizeof(szClass));
+ if (NtUserGetClassName(hwnd, FALSE, &ClassName) &&
+ RtlEqualUnicodeString(&ClassName, &GhostClass, TRUE))
+ {
+ return TRUE;
+ }
+
return (NtUserQueryWindow(hwnd, QUERY_WINDOW_ISHUNG) != 0);
}
return (NtUserQueryWindow(hwnd, QUERY_WINDOW_ISHUNG) != 0);
}