[MSCTF] Sync with Wine Staging 1.9.16. CORE-11866

svn path=/trunk/; revision=72290
This commit is contained in:
Amine Khaldi 2016-08-18 10:19:15 +00:00
parent e4a5020766
commit f841a54235
5 changed files with 21 additions and 14 deletions

View file

@ -98,10 +98,7 @@ static void Context_Destructor(Context *This)
TRACE("destroying %p\n", This); TRACE("destroying %p\n", This);
if (This->pITextStoreACP) if (This->pITextStoreACP)
{
ITextStoreACP_UnadviseSink(This->pITextStoreACP, (IUnknown*)&This->ITextStoreACPSink_iface);
ITextStoreACP_Release(This->pITextStoreACP); ITextStoreACP_Release(This->pITextStoreACP);
}
if (This->pITfContextOwnerCompositionSink) if (This->pITfContextOwnerCompositionSink)
ITfContextOwnerCompositionSink_Release(This->pITfContextOwnerCompositionSink); ITfContextOwnerCompositionSink_Release(This->pITfContextOwnerCompositionSink);

View file

@ -72,7 +72,7 @@ typedef struct {
} EnumTfInputProcessorProfiles; } EnumTfInputProcessorProfiles;
static HRESULT ProfilesEnumGuid_Constructor(IEnumGUID **ppOut); static HRESULT ProfilesEnumGuid_Constructor(IEnumGUID **ppOut);
static HRESULT EnumTfLanguageProfiles_Constructor(LANGID langid, IEnumTfLanguageProfiles **ppOut); static HRESULT EnumTfLanguageProfiles_Constructor(LANGID langid, EnumTfLanguageProfiles **out);
static inline EnumTfInputProcessorProfiles *impl_from_IEnumTfInputProcessorProfiles(IEnumTfInputProcessorProfiles *iface) static inline EnumTfInputProcessorProfiles *impl_from_IEnumTfInputProcessorProfiles(IEnumTfInputProcessorProfiles *iface)
{ {
@ -595,8 +595,17 @@ static HRESULT WINAPI InputProcessorProfiles_EnumLanguageProfiles(
IEnumTfLanguageProfiles **ppEnum) IEnumTfLanguageProfiles **ppEnum)
{ {
InputProcessorProfiles *This = impl_from_ITfInputProcessorProfiles(iface); InputProcessorProfiles *This = impl_from_ITfInputProcessorProfiles(iface);
EnumTfLanguageProfiles *profenum;
HRESULT hr;
TRACE("(%p) %x %p\n",This,langid,ppEnum); TRACE("(%p) %x %p\n",This,langid,ppEnum);
return EnumTfLanguageProfiles_Constructor(langid, ppEnum);
if (!ppEnum)
return E_INVALIDARG;
hr = EnumTfLanguageProfiles_Constructor(langid, &profenum);
*ppEnum = &profenum->IEnumTfLanguageProfiles_iface;
return hr;
} }
static HRESULT WINAPI InputProcessorProfiles_EnableLanguageProfile( static HRESULT WINAPI InputProcessorProfiles_EnableLanguageProfile(
@ -1267,16 +1276,16 @@ static HRESULT WINAPI EnumTfLanguageProfiles_Clone( IEnumTfLanguageProfiles *ifa
IEnumTfLanguageProfiles **ppenum) IEnumTfLanguageProfiles **ppenum)
{ {
EnumTfLanguageProfiles *This = impl_from_IEnumTfLanguageProfiles(iface); EnumTfLanguageProfiles *This = impl_from_IEnumTfLanguageProfiles(iface);
EnumTfLanguageProfiles *new_This;
HRESULT res; HRESULT res;
TRACE("(%p)\n",This); TRACE("(%p)\n",This);
if (ppenum == NULL) return E_POINTER; if (ppenum == NULL) return E_POINTER;
res = EnumTfLanguageProfiles_Constructor(This->langid, ppenum); res = EnumTfLanguageProfiles_Constructor(This->langid, &new_This);
if (SUCCEEDED(res)) if (SUCCEEDED(res))
{ {
EnumTfLanguageProfiles *new_This = (EnumTfLanguageProfiles *)*ppenum;
new_This->tip_index = This->tip_index; new_This->tip_index = This->tip_index;
lstrcpynW(new_This->szwCurrentClsid,This->szwCurrentClsid,39); lstrcpynW(new_This->szwCurrentClsid,This->szwCurrentClsid,39);
@ -1289,6 +1298,7 @@ static HRESULT WINAPI EnumTfLanguageProfiles_Clone( IEnumTfLanguageProfiles *ifa
res = RegOpenKeyExW(new_This->tipkey, fullkey, 0, KEY_READ | KEY_WRITE, &This->langkey); res = RegOpenKeyExW(new_This->tipkey, fullkey, 0, KEY_READ | KEY_WRITE, &This->langkey);
new_This->lang_index = This->lang_index; new_This->lang_index = This->lang_index;
} }
*ppenum = &new_This->IEnumTfLanguageProfiles_iface;
} }
return res; return res;
} }
@ -1304,7 +1314,7 @@ static const IEnumTfLanguageProfilesVtbl EnumTfLanguageProfilesVtbl =
EnumTfLanguageProfiles_Skip EnumTfLanguageProfiles_Skip
}; };
static HRESULT EnumTfLanguageProfiles_Constructor(LANGID langid, IEnumTfLanguageProfiles **ppOut) static HRESULT EnumTfLanguageProfiles_Constructor(LANGID langid, EnumTfLanguageProfiles **out)
{ {
HRESULT hr; HRESULT hr;
EnumTfLanguageProfiles *This; EnumTfLanguageProfiles *This;
@ -1331,7 +1341,7 @@ static HRESULT EnumTfLanguageProfiles_Constructor(LANGID langid, IEnumTfLanguage
return E_FAIL; return E_FAIL;
} }
*ppOut = &This->IEnumTfLanguageProfiles_iface; *out = This;
TRACE("returning %p\n", *ppOut); TRACE("returning %p\n", *out);
return S_OK; return S_OK;
} }

View file

@ -370,7 +370,7 @@ static void deactivate_remove_conflicting_ts(REFCLSID catid)
list_remove(&ats->entry); list_remove(&ats->entry);
HeapFree(GetProcessHeap(),0,ats->ats); HeapFree(GetProcessHeap(),0,ats->ats);
HeapFree(GetProcessHeap(),0,ats); HeapFree(GetProcessHeap(),0,ats);
/* we are guarenteeing there is only 1 */ /* we are guaranteeing there is only 1 */
break; break;
} }
} }

View file

@ -1467,8 +1467,8 @@ static HRESULT EnumTfDocumentMgr_Constructor(struct list* head, IEnumTfDocumentM
This->head = head; This->head = head;
This->index = list_head(This->head); This->index = list_head(This->head);
TRACE("returning %p\n", This); TRACE("returning %p\n", &This->IEnumTfDocumentMgrs_iface);
*ppOut = (IEnumTfDocumentMgrs*)This; *ppOut = &This->IEnumTfDocumentMgrs_iface;
return S_OK; return S_OK;
} }

View file

@ -108,7 +108,7 @@ reactos/dll/win32/msadp32.acm # Synced to WineStaging-1.9.11
reactos/dll/win32/mscat32 # Synced to WineStaging-1.9.11 reactos/dll/win32/mscat32 # Synced to WineStaging-1.9.11
reactos/dll/win32/mscms # Synced to WineStaging-1.9.11 reactos/dll/win32/mscms # Synced to WineStaging-1.9.11
reactos/dll/win32/mscoree # Synced to Wine-1.5.4 reactos/dll/win32/mscoree # Synced to Wine-1.5.4
reactos/dll/win32/msctf # Synced to WineStaging-1.9.11 reactos/dll/win32/msctf # Synced to WineStaging-1.9.16
reactos/dll/win32/msftedit # Synced to WineStaging-1.9.11 reactos/dll/win32/msftedit # Synced to WineStaging-1.9.11
reactos/dll/win32/msg711.acm # 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 reactos/dll/win32/msgsm32.acm # Synced to WineStaging-1.9.11