diff -pudN e:\wine\dlls\ole32/clipboard.c e:\reactos\dll\win32\ole32/clipboard.c --- e:\wine\dlls\ole32/clipboard.c 2016-11-16 17:29:23 +0100 +++ e:\reactos\dll\win32\ole32/clipboard.c 2016-11-16 23:37:23 +0100 @@ -2001,6 +2001,10 @@ static LRESULT CALLBACK clipbrd_wndproc( ole_clipbrd *clipbrd; get_ole_clipbrd(&clipbrd); +#ifdef __REACTOS__ + if(clipbrd == NULL) + return DefWindowProcW(hwnd, message, wparam, lparam); +#endif switch (message) { diff -pudN e:\wine\dlls\ole32/compobj.c e:\reactos\dll\win32\ole32/compobj.c --- e:\wine\dlls\ole32/compobj.c 2016-11-16 17:29:23 +0100 +++ e:\reactos\dll\win32\ole32/compobj.c 2016-11-17 15:23:00 +0100 @@ -43,6 +43,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(ole); +#undef ARRAYSIZE #define ARRAYSIZE(array) (sizeof(array)/sizeof((array)[0])) /**************************************************************************** @@ -303,9 +304,13 @@ static NTSTATUS create_key( HKEY *retkey return status; } +#ifdef __REACTOS__ +static const WCHAR classes_rootW[] = L"\\REGISTRY\\Machine\\Software\\Classes"; +#else static const WCHAR classes_rootW[] = {'\\','R','e','g','i','s','t','r','y','\\','M','a','c','h','i','n','e', '\\','S','o','f','t','w','a','r','e','\\','C','l','a','s','s','e','s',0}; +#endif static HKEY classes_root_hkey; diff -pudN e:\wine\dlls\ole32/stg_prop.c e:\reactos\dll\win32\ole32/stg_prop.c --- e:\wine\dlls\ole32/stg_prop.c 2016-11-16 17:29:23 +0100 +++ e:\reactos\dll\win32\ole32/stg_prop.c 2016-08-15 16:49:04 +0100 @@ -1013,7 +1017,13 @@ static HRESULT PropertyStorage_ReadDicti return hr; } -static void* WINAPI Allocate_CoTaskMemAlloc(void *this, ULONG size) +#ifdef __i386__ +#define __thiscall_wrapper __stdcall +#else +#define __thiscall_wrapper __cdecl +#endif + +static void* __thiscall_wrapper Allocate_CoTaskMemAlloc(void *this, ULONG size) { return CoTaskMemAlloc(size); } @@ -1022,7 +1032,7 @@ static void* WINAPI Allocate_CoTaskMemAl * end of the buffer. */ static HRESULT PropertyStorage_ReadProperty(PROPVARIANT *prop, const BYTE *data, - UINT codepage, void* (WINAPI *allocate)(void *this, ULONG size), void *allocate_data) + UINT codepage, void* (__thiscall_wrapper *allocate)(void *this, ULONG size), void *allocate_data) { HRESULT hr = S_OK; @@ -2711,13 +2721,13 @@ end: "jmp *(4*(" #num "))(%eax)" ) DEFINE_STDCALL_WRAPPER(0,Allocate_PMemoryAllocator,8) -extern void* WINAPI Allocate_PMemoryAllocator(void *this, ULONG cbSize); +extern void* __stdcall Allocate_PMemoryAllocator(void *this, ULONG cbSize); #else -static void* WINAPI Allocate_PMemoryAllocator(void *this, ULONG cbSize) +static void* __cdecl Allocate_PMemoryAllocator(void *this, ULONG cbSize) { - void* (WINAPI *fn)(void*,ULONG) = **(void***)this; + void* (__cdecl *fn)(void*,ULONG) = **(void***)this; return fn(this, cbSize); } diff -pudN e:\wine\dlls\ole32/drag_copy.cur e:\reactos\dll\win32\ole32/drag_copy.cur diff -pudN e:\wine\dlls\ole32/drag_link.cur e:\reactos\dll\win32\ole32/drag_link.cur diff -pudN e:\wine\dlls\ole32/drag_move.cur e:\reactos\dll\win32\ole32/drag_move.cur diff -pudN e:\wine\dlls\ole32/nodrop.cur e:\reactos\dll\win32\ole32/nodrop.cur #4 cur files kept at older state of ros SVN r75889 to avoid CORE-14608