From: Alfred Agrell floating@muncher.se
--- dlls/ntdll/locale.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/dlls/ntdll/locale.c b/dlls/ntdll/locale.c index 545cc628909..ebc4b3befb6 100644 --- a/dlls/ntdll/locale.c +++ b/dlls/ntdll/locale.c @@ -950,14 +950,15 @@ NTSTATUS WINAPI RtlUTF8ToUnicodeN( WCHAR *dst, DWORD dstlen, DWORD *reslen, cons NTSTATUS status;
if (!src) return STATUS_INVALID_PARAMETER_4; - if (!reslen) return STATUS_INVALID_PARAMETER; + if (!reslen && !dst) return STATUS_INVALID_PARAMETER;
if (!dst) status = utf8_mbstowcs_size( src, srclen, &ret ); else status = utf8_mbstowcs( dst, dstlen / sizeof(WCHAR), &ret, src, srclen );
- *reslen = ret * sizeof(WCHAR); + if (reslen) + *reslen = ret * sizeof(WCHAR); return status; }