- Fix return properties from atom.

svn path=/trunk/; revision=54599
This commit is contained in:
James Tabor
2011-12-05 07:43:29 +00:00
parent b8680bd686
commit 5c7cd6fe68
3 changed files with 12 additions and 4 deletions
@@ -135,14 +135,19 @@ IntEngWindowChanged(
PWND Window,
FLONG flChanged)
{
PPROPERTY pprop;
WNDGDI *Current;
HWND hWnd;
ASSERT_IRQL_LESS_OR_EQUAL(PASSIVE_LEVEL);
hWnd = Window->head.h;
Current = (WNDGDI *)IntGetProp(Window, AtomWndObj);
pprop = IntGetProp(Window, AtomWndObj);
if (!pprop)
{
return;
}
Current = (WNDGDI *)pprop->Data;
if ( gcountPWO &&
Current &&
Current->Hwnd == hWnd &&
@@ -633,7 +633,7 @@ NtUserCallHwnd(
UserDerefObjectCo(Window);
UserLeave();
return (DWORD)HelpId;
return (DWORD)HelpId->Data;
}
case HWND_ROUTINE_REGISTERSHELLHOOKWINDOW:
if (IntIsWindow(hWnd))
@@ -973,12 +973,15 @@ UserGethWnd( HDC hdc, PWNDOBJ *pwndo)
PWNDGDI pWndgdi;
PWND Wnd;
HWND hWnd;
PPROPERTY pprop;
hWnd = IntWindowFromDC(hdc);
if (hWnd && !(Wnd = UserGetWindowObject(hWnd)))
{
pWndgdi = (WNDGDI *)IntGetProp(Wnd, AtomWndObj);
pprop = IntGetProp(Wnd, AtomWndObj);
pWndgdi = (WNDGDI *)pprop->Data;
if ( pWndgdi && pWndgdi->Hwnd == hWnd )
{