Wrong call convention for SHAllocShared & co?

Francois Gouget fgouget at free.fr
Sat Aug 21 15:26:13 CDT 2004


In the platform SDK's shlobj.h I find:

HANDLE _SHAllocShared(LPCVOID pvData, DWORD dwSize, DWORD dwDestinationProcessId);


Notice the lack of a WINAPI and the leading underscore. So this would
indicate a cdecl API. But in dlls/shell32/undocshell.h I see:

HANDLE WINAPI SHAllocShared(LPVOID pv, ULONG cb, DWORD pid);

This really looks like the same function, just without the underscore.
Furthermore shell32.spec says:

 520 stdcall SHAllocShared (long long long)

So who's right? The platform SDK that says this is a cdecl function or
Wine's headers?

There's the same issue for SHFreeShared, SHLockShared and
SHUnlockShared.

-- 
Francois Gouget         fgouget at free.fr        http://fgouget.free.fr/
                Linux: It is now safe to turn on your computer.



More information about the wine-devel mailing list