Author: akhaldi Date: Sun Feb 26 18:33:14 2017 New Revision: 73963
URL: http://svn.reactos.org/svn/reactos?rev=73963&view=rev Log: [MSCTF] Sync with Wine Staging 2.2. CORE-12823
7bcca92 msctf: Return proper pointer to interface. 04b97c2 msctf: Allow unadvising ITfThreadFocusSink. 7ebe59b msctf: Use correct sink for ITfThreadFocusSink. d766288 msctf: Remove incorrect dereference of double pointer. 137166f msctf: Use interface pointer instead of object pointer.
Modified: trunk/reactos/dll/win32/msctf/msctf.c trunk/reactos/dll/win32/msctf/msctf_internal.h trunk/reactos/dll/win32/msctf/threadmgr.c trunk/reactos/media/doc/README.WINE
Modified: trunk/reactos/dll/win32/msctf/msctf.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msctf/msctf.c?rev... ============================================================================== --- trunk/reactos/dll/win32/msctf/msctf.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/msctf/msctf.c [iso-8859-1] Sun Feb 26 18:33:14 2017 @@ -162,7 +162,7 @@ This->IClassFactory_iface.lpVtbl = &ClassFactoryVtbl; This->ref = 1; This->ctor = ctor; - *ppvOut = This; + *ppvOut = &This->IClassFactory_iface; TRACE("Created class factory %p\n", This); return S_OK; }
Modified: trunk/reactos/dll/win32/msctf/msctf_internal.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msctf/msctf_inter... ============================================================================== --- trunk/reactos/dll/win32/msctf/msctf_internal.h [iso-8859-1] (original) +++ trunk/reactos/dll/win32/msctf/msctf_internal.h [iso-8859-1] Sun Feb 26 18:33:14 2017 @@ -52,6 +52,7 @@ #define COOKIE_MAGIC_EDITCOOKIE 0x0050 #define COOKIE_MAGIC_COMPARTMENTSINK 0x0060 #define COOKIE_MAGIC_DMSINK 0x0070 +#define COOKIE_MAGIC_THREADFOCUSSINK 0x0080
extern DWORD tlsIndex DECLSPEC_HIDDEN; extern TfClientId processId DECLSPEC_HIDDEN;
Modified: trunk/reactos/dll/win32/msctf/threadmgr.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msctf/threadmgr.c... ============================================================================== --- trunk/reactos/dll/win32/msctf/threadmgr.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/msctf/threadmgr.c [iso-8859-1] Sun Feb 26 18:33:14 2017 @@ -597,7 +597,7 @@ if (IsEqualIID(riid, &IID_ITfThreadFocusSink)) { WARN("semi-stub for ITfThreadFocusSink: sink won't be used.\n"); - return advise_sink(&This->ThreadMgrEventSink, &IID_ITfThreadMgrEventSink, COOKIE_MAGIC_TMSINK, punk, pdwCookie); + return advise_sink(&This->ThreadFocusSink, &IID_ITfThreadFocusSink, COOKIE_MAGIC_THREADFOCUSSINK, punk, pdwCookie); }
FIXME("(%p) Unhandled Sink: %s\n",This,debugstr_guid(riid)); @@ -610,7 +610,7 @@
TRACE("(%p) %x\n",This,pdwCookie);
- if (get_Cookie_magic(pdwCookie)!=COOKIE_MAGIC_TMSINK) + if (get_Cookie_magic(pdwCookie) != COOKIE_MAGIC_TMSINK && get_Cookie_magic(pdwCookie) != COOKIE_MAGIC_THREADFOCUSSINK) return E_INVALIDARG;
return unadvise_sink(pdwCookie); @@ -1166,7 +1166,7 @@ { ThreadMgr *This = impl_from_ITfUIElementMgr(iface);
- return ITfThreadMgrEx_QueryInterface(&This->ITfThreadMgrEx_iface, iid, *ppvOut); + return ITfThreadMgrEx_QueryInterface(&This->ITfThreadMgrEx_iface, iid, ppvOut); }
static ULONG WINAPI UIElementMgr_AddRef(ITfUIElementMgr *iface) @@ -1315,7 +1315,7 @@ This->refCount = 1; TlsSetValue(tlsIndex,This);
- CompartmentMgr_Constructor((IUnknown*)This, &IID_IUnknown, (IUnknown**)&This->CompartmentMgr); + CompartmentMgr_Constructor((IUnknown*)&This->ITfThreadMgrEx_iface, &IID_IUnknown, (IUnknown**)&This->CompartmentMgr);
list_init(&This->CurrentPreservedKeys); list_init(&This->CreatedDocumentMgrs);
Modified: trunk/reactos/media/doc/README.WINE URL: http://svn.reactos.org/svn/reactos/trunk/reactos/media/doc/README.WINE?rev=7... ============================================================================== --- trunk/reactos/media/doc/README.WINE [iso-8859-1] (original) +++ trunk/reactos/media/doc/README.WINE [iso-8859-1] Sun Feb 26 18:33:14 2017 @@ -106,7 +106,7 @@ reactos/dll/win32/mscat32 # Synced to WineStaging-1.9.11 reactos/dll/win32/mscms # Synced to WineStaging-2.2 reactos/dll/win32/mscoree # Synced to Wine-1.5.4 -reactos/dll/win32/msctf # Synced to WineStaging-1.9.23 +reactos/dll/win32/msctf # Synced to WineStaging-2.2 reactos/dll/win32/msftedit # Synced to WineStaging-1.9.11 reactos/dll/win32/msg711.acm # Synced to WineStaging-1.9.11 reactos/dll/win32/msgsm32.acm # Synced to WineStaging-1.9.11