atl: reuse code of AtlModuleRegisterWndClassInfoW for AtlModuleRegisterWndClassInfoA (try 2)
Andrey Turkin
andrey.turkin at gmail.com
Tue May 25 11:18:24 CDT 2010
25.05.2010 19:58, André Hentschel wrote:
> Am 25.05.2010 17:05, schrieb Andrey Turkin:
>
>> 25.05.2010 18:51, André Hentschel wrote:
>>
>>> --- a/dlls/atl/atlwin.h
>>> +++ b/dlls/atl/atlwin.h
>>> @@ -43,7 +43,7 @@ typedef struct _ATL_WNDCLASSINFOW_TAG
>>> WCHAR m_szAutoName[14];
>>> } _ATL_WNDCLASSINFOW;
>>>
>>> -ATOM WINAPI AtlModuleRegisterWndClassInfoA(_ATL_MODULEW *pm,
>>> _ATL_WNDCLASSINFOA *wci, WNDPROC *pProc);
>>> +ATOM WINAPI AtlModuleRegisterWndClassInfoA(_ATL_MODULEA *pm,
>>> _ATL_WNDCLASSINFOA *wci, WNDPROC *pProc);
>>> ATOM WINAPI AtlModuleRegisterWndClassInfoW(_ATL_MODULEW *pm,
>>> _ATL_WNDCLASSINFOW *wci, WNDPROC *pProc);
>>>
>>> HDC WINAPI AtlCreateTargetDC(HDC hdc, DVTARGETDEVICE *ptd);
>>>
>>>
>> Are you sure about this change?
>>
>>
> 95 percent. the unicode struct would not make much sense to me.
>
>
The reason I asked was caused by the fact SDK's header specifies same
unqualified _ATL_MODULE type for both functions so unless native atl.dll
was partially unicode and partiall ansi compiled both functions would
have same type of the argument. So I thought you might have some proof
of whether this is true.
Ansi version indeed makes more sense here (since most callers who uses
ansi version of the function would probably have their _Module as ansi
too) . Anyway, the code of this function doesn't use any of
unicode-dependant parts of _ATL_MODULE so any type will do.
More information about the wine-devel
mailing list