Module: wine Branch: master Commit: 68e1735acf8c5ae8ad9cfeedcd8690b88d9a0b44 URL: http://source.winehq.org/git/wine.git/?a=commit;h=68e1735acf8c5ae8ad9cfeedcd...
Author: Detlef Riekenberg wine.dev@web.de Date: Fri May 29 23:31:44 2009 +0200
mlang: Check output pointer for NULL.
---
dlls/mlang/mlang.c | 4 ++++ dlls/mlang/tests/mlang.c | 3 +++ 2 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/dlls/mlang/mlang.c b/dlls/mlang/mlang.c index 4144ef5..501ccfc 100644 --- a/dlls/mlang/mlang.c +++ b/dlls/mlang/mlang.c @@ -2257,6 +2257,8 @@ static HRESULT WINAPI fnIMultiLanguage_GetRfc1766FromLcid( WCHAR buf[MAX_RFC1766_NAME];
TRACE("%p %04x %p\n", iface, lcid, pbstrRfc1766); + if (!pbstrRfc1766) + return E_INVALIDARG;
if (!lcid_to_rfc1766W( lcid, buf, MAX_RFC1766_NAME )) { @@ -2812,6 +2814,8 @@ static HRESULT WINAPI fnIMultiLanguage2_GetRfc1766FromLcid( WCHAR buf[MAX_RFC1766_NAME];
TRACE("%p %04x %p\n", iface, lcid, pbstrRfc1766); + if (!pbstrRfc1766) + return E_INVALIDARG;
if (!lcid_to_rfc1766W( lcid, buf, MAX_RFC1766_NAME )) { diff --git a/dlls/mlang/tests/mlang.c b/dlls/mlang/tests/mlang.c index bf21146..829af24 100644 --- a/dlls/mlang/tests/mlang.c +++ b/dlls/mlang/tests/mlang.c @@ -966,6 +966,9 @@ static void test_GetRfc1766FromLcid(IMultiLanguage2 *iML2)
SysFreeString(rfcstr); } + + hr = IMultiLanguage2_GetRfc1766FromLcid(iML2, MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US), NULL); + ok(hr == E_INVALIDARG, "got 0x%x (expected E_INVALIDARG)\n", hr); }
static void test_IMultiLanguage2_ConvertStringFromUnicode(IMultiLanguage2 *iML2)