From e459daf68f37f86b3c86dedbca9f511d84446936 Mon Sep 17 00:00:00 2001 From: James Tabor Date: Sat, 29 Jan 2011 09:09:10 +0000 Subject: [PATCH] [Win32k] - Fix crash with standalone win test_hind_message test. svn path=/trunk/; revision=50548 --- reactos/subsystems/win32/win32k/ntuser/painting.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/reactos/subsystems/win32/win32k/ntuser/painting.c b/reactos/subsystems/win32/win32k/ntuser/painting.c index 53f7b41d1ee..c9bc3146a60 100644 --- a/reactos/subsystems/win32/win32k/ntuser/painting.c +++ b/reactos/subsystems/win32/win32k/ntuser/painting.c @@ -692,13 +692,18 @@ co_IntFixCaret(PWND Window, RECTL *lprc, UINT flags) { PDESKTOP Desktop; PTHRDCARETINFO CaretInfo; + PTHREADINFO pti; + PUSER_MESSAGE_QUEUE ActiveMessageQueue; HWND hWndCaret; PWND WndCaret; ASSERT_REFS_CO(Window); - Desktop = ((PTHREADINFO)PsGetCurrentThread()->Tcb.Win32Thread)->rpdesk; - CaretInfo = ((PUSER_MESSAGE_QUEUE)Desktop->ActiveMessageQueue)->CaretInfo; + pti = PsGetCurrentThreadWin32Thread(); + Desktop = pti->rpdesk; + ActiveMessageQueue = Desktop->ActiveMessageQueue; + if (!ActiveMessageQueue) return 0; + CaretInfo = ActiveMessageQueue->CaretInfo; hWndCaret = CaretInfo->hWnd; WndCaret = UserGetWindowObject(hWndCaret);