[PATCH 1/2] msctf: Don't crash on NULL input in EnumLanguageProfiles().
Michael Stefaniuc
mstefani at redhat.de
Tue Jul 19 02:46:01 CDT 2016
Signed-off-by: Michael Stefaniuc <mstefani at redhat.de>
---
dlls/msctf/inputprocessor.c | 4 ++++
dlls/msctf/tests/inputprocessor.c | 5 +++++
2 files changed, 9 insertions(+)
diff --git a/dlls/msctf/inputprocessor.c b/dlls/msctf/inputprocessor.c
index 0e8ad22..fca78e4 100644
--- a/dlls/msctf/inputprocessor.c
+++ b/dlls/msctf/inputprocessor.c
@@ -617,6 +617,10 @@ static HRESULT WINAPI InputProcessorProfiles_EnumLanguageProfiles(
{
InputProcessorProfiles *This = impl_from_ITfInputProcessorProfiles(iface);
TRACE("(%p) %x %p\n",This,langid,ppEnum);
+
+ if (!ppEnum)
+ return E_INVALIDARG;
+
return EnumTfLanguageProfiles_Constructor(langid, ppEnum);
}
diff --git a/dlls/msctf/tests/inputprocessor.c b/dlls/msctf/tests/inputprocessor.c
index 831e37a..2096bff 100644
--- a/dlls/msctf/tests/inputprocessor.c
+++ b/dlls/msctf/tests/inputprocessor.c
@@ -973,6 +973,11 @@ static void test_EnumLanguageProfiles(void)
{
BOOL found = FALSE;
IEnumTfLanguageProfiles *ppEnum;
+ HRESULT hr;
+
+ hr = ITfInputProcessorProfiles_EnumLanguageProfiles(g_ipp, gLangid, NULL);
+ ok(hr == E_INVALIDARG, "EnumLanguageProfiles failed: %x\n", hr);
+
if (SUCCEEDED(ITfInputProcessorProfiles_EnumLanguageProfiles(g_ipp,gLangid,&ppEnum)))
{
TF_LANGUAGEPROFILE profile;
--
2.5.5
More information about the wine-patches
mailing list