- [Win32k] Use PostMessage to send broadcast messages to the queues. co_IntPostOrSendMessage does not support it.

svn path=/trunk/; revision=44332
This commit is contained in:
James Tabor 2009-11-30 19:21:27 +00:00
parent e3e3b99e8e
commit 78365fd832
2 changed files with 14 additions and 11 deletions

View file

@ -628,7 +628,7 @@ IntDereferenceClass(IN OUT PCLS Class,
{ {
ASSERT(Class->pclsBase == Class); ASSERT(Class->pclsBase == Class);
DPRINT("IntDereferenceClass 0x%x\n", Class); DPRINT1("IntDereferenceClass 0x%x\n", Class);
/* check if there are clones of the class on other desktops, /* check if there are clones of the class on other desktops,
link the first clone in if possible. If there are no clones link the first clone in if possible. If there are no clones
then leave the class on the desktop heap. It will get moved then leave the class on the desktop heap. It will get moved
@ -666,7 +666,7 @@ IntDereferenceClass(IN OUT PCLS Class,
} }
else else
{ {
DPRINT("IntDereferenceClass1 0x%x\n", Class); DPRINT1("IntDereferenceClass1 0x%x\n", Class);
/* locate the cloned class and unlink it */ /* locate the cloned class and unlink it */
PrevLink = &BaseClass->pclsClone; PrevLink = &BaseClass->pclsClone;
@ -1154,7 +1154,7 @@ IntGetClassAtom(IN PUNICODE_STRING ClassName,
&pi->pclsPrivateList, &pi->pclsPrivateList,
Link); Link);
if (Class != NULL) if (Class != NULL)
{ { DPRINT1("Step 1: 0x%x\n",Class );
goto FoundClass; goto FoundClass;
} }
@ -1165,7 +1165,7 @@ IntGetClassAtom(IN PUNICODE_STRING ClassName,
&pi->pclsPublicList, &pi->pclsPublicList,
Link); Link);
if (Class != NULL) if (Class != NULL)
{ { DPRINT1("Step 2: 0x%x 0x%x\n",Class, Class->hModule);
goto FoundClass; goto FoundClass;
} }
@ -1175,7 +1175,7 @@ IntGetClassAtom(IN PUNICODE_STRING ClassName,
&pi->pclsPrivateList, &pi->pclsPrivateList,
Link); Link);
if (Class != NULL) if (Class != NULL)
{ { DPRINT1("Step 3: 0x%x\n",Class );
goto FoundClass; goto FoundClass;
} }
@ -1188,7 +1188,7 @@ IntGetClassAtom(IN PUNICODE_STRING ClassName,
{ {
SetLastWin32Error(ERROR_CLASS_DOES_NOT_EXIST); SetLastWin32Error(ERROR_CLASS_DOES_NOT_EXIST);
return (RTL_ATOM)0; return (RTL_ATOM)0;
} }else{DPRINT1("Step 4: 0x%x\n",Class );}
FoundClass: FoundClass:
*BaseClass = Class; *BaseClass = Class;
@ -1294,7 +1294,7 @@ UserUnregisterClass(IN PUNICODE_STRING ClassName,
pi = GetW32ProcessInfo(); pi = GetW32ProcessInfo();
DPRINT("UserUnregisterClass(%wZ, 0x%x)\n", ClassName, hInstance); DPRINT1("UserUnregisterClass(%wZ, 0x%x)\n", ClassName, hInstance);
/* NOTE: Accessing the buffer in ClassName may raise an exception! */ /* NOTE: Accessing the buffer in ClassName may raise an exception! */
ClassAtom = IntGetClassAtom(ClassName, ClassAtom = IntGetClassAtom(ClassName,
@ -1326,8 +1326,8 @@ UserUnregisterClass(IN PUNICODE_STRING ClassName,
if (NT_SUCCESS(IntDeregisterClassAtom(Class->atomClassName))) if (NT_SUCCESS(IntDeregisterClassAtom(Class->atomClassName)))
{ {
DPRINT("Class 0x%x\n", Class); DPRINT1("Class 0x%x\n", Class);
DPRINT("UserUnregisterClass: Good Exit!\n"); DPRINT1("UserUnregisterClass: Good Exit!\n");
/* finally free the resources */ /* finally free the resources */
IntDestroyClass(Class); IntDestroyClass(Class);
return TRUE; return TRUE;
@ -2402,6 +2402,7 @@ InvalidParameter:
if (Ret) if (Ret)
{ {
DPRINT1("GetClassInfo(%wZ, 0x%x)\n", ClassName, hInstance);
ClassAtom = IntGetClassAtom( &SafeClassName, ClassAtom = IntGetClassAtom( &SafeClassName,
hInstance, hInstance,
ppi, ppi,

View file

@ -77,8 +77,10 @@ co_IntSendActivateMessages(HWND hWndPrev, HWND hWnd, BOOL MouseActivate)
/* Send palette messages */ /* Send palette messages */
if (co_IntPostOrSendMessage(hWnd, WM_QUERYNEWPALETTE, 0, 0)) if (co_IntPostOrSendMessage(hWnd, WM_QUERYNEWPALETTE, 0, 0))
{ {
co_IntPostOrSendMessage(HWND_BROADCAST, WM_PALETTEISCHANGING, UserPostMessage( HWND_BROADCAST,
(WPARAM)hWnd, 0); WM_PALETTEISCHANGING,
(WPARAM)hWnd,
0);
} }
if (UserGetWindow(hWnd, GW_HWNDPREV) != NULL) if (UserGetWindow(hWnd, GW_HWNDPREV) != NULL)