user32: Check both A and W proc for previously allocated winprocs.

Some apps get a winproc as A and then set it again as W.
This commit is contained in:
Alexandre Julliard 2007-07-12 15:45:00 +02:00
parent 55d70e894c
commit cc90b25aef
1 changed files with 3 additions and 2 deletions

View File

@ -98,8 +98,9 @@ static inline WINDOWPROC *find_winproc( WNDPROC funcA, WNDPROC funcW )
for (i = 0; i < winproc_used; i++)
{
if (funcA && winproc_array[i].procA != funcA) continue;
if (funcW && winproc_array[i].procW != funcW) continue;
/* match either proc, some apps confuse A and W */
if (funcA && winproc_array[i].procA != funcA && winproc_array[i].procW != funcA) continue;
if (funcW && winproc_array[i].procA != funcW && winproc_array[i].procW != funcW) continue;
return &winproc_array[i];
}
return NULL;