mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-02 04:13:34 +00:00
[KERNEL32]
* Check more parameters in MultiByteToWideChar() and WideCharToMultibyte(). By Marcus Boillat. * Fixes 4 kernel32:codepage tests. CORE-7411 #resolve #comment Committed in r59839 with formatting fixes. Thanks. svn path=/trunk/; revision=59839
This commit is contained in:
@@ -1465,6 +1465,7 @@ MultiByteToWideChar(UINT CodePage,
|
||||
{
|
||||
/* Check the parameters. */
|
||||
if (MultiByteString == NULL ||
|
||||
MultiByteCount == 0 ||
|
||||
(WideCharString == NULL && WideCharCount > 0) ||
|
||||
(PVOID)MultiByteString == (PVOID)WideCharString)
|
||||
{
|
||||
@@ -1899,6 +1900,7 @@ WideCharToMultiByte(UINT CodePage,
|
||||
{
|
||||
/* Check the parameters. */
|
||||
if (WideCharString == NULL ||
|
||||
WideCharCount == 0 ||
|
||||
(MultiByteString == NULL && MultiByteCount > 0) ||
|
||||
(PVOID)WideCharString == (PVOID)MultiByteString ||
|
||||
MultiByteCount < 0)
|
||||
@@ -1916,6 +1918,11 @@ WideCharToMultiByte(UINT CodePage,
|
||||
switch (CodePage)
|
||||
{
|
||||
case CP_UTF8:
|
||||
if (DefaultChar != NULL || UsedDefaultChar != NULL)
|
||||
{
|
||||
SetLastError(ERROR_INVALID_PARAMETER);
|
||||
return 0;
|
||||
}
|
||||
return IntWideCharToMultiByteUTF8(CodePage,
|
||||
Flags,
|
||||
WideCharString,
|
||||
|
||||
Reference in New Issue
Block a user