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?re…
==============================================================================
--- 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_inte…
==============================================================================
--- 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.…
==============================================================================
--- 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=…
==============================================================================
--- 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