[PATCH] kernel32: Handle NULL locale name in IsValidLocaleName()

Nikolay Sivov bunglehead at gmail.com
Sun May 15 02:49:23 CDT 2016


On 15.05.2016 10:42, Austin English wrote:
> On May 15, 2016 2:30 AM, "Nikolay Sivov" <nsivov at codeweavers.com
> <mailto:nsivov at codeweavers.com>> wrote:
>>
>> Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com
> <mailto:nsivov at codeweavers.com>>
>> ---
>>  dlls/kernel32/locale.c       | 3 +++
>>  dlls/kernel32/tests/locale.c | 2 ++
>>  2 files changed, 5 insertions(+)
>>
>> diff --git a/dlls/kernel32/locale.c b/dlls/kernel32/locale.c
>> index a69e76f..636187f 100644
>> --- a/dlls/kernel32/locale.c
>> +++ b/dlls/kernel32/locale.c
>> @@ -2656,6 +2656,9 @@ BOOL WINAPI IsValidLocaleName( LPCWSTR locale )
>>  {
>>      struct locale_name locale_name;
>>
>> +    if (!locale)
>> +        return FALSE;
>> +
>>      /* string parsing */
>>      parse_locale_name( locale, &locale_name );
>>
>> diff --git a/dlls/kernel32/tests/locale.c b/dlls/kernel32/tests/locale.c
>> index 20f52d2..70944a2 100644
>> --- a/dlls/kernel32/tests/locale.c
>> +++ b/dlls/kernel32/tests/locale.c
>> @@ -4179,6 +4179,8 @@ static void test_IsValidLocaleName(void)
>>      ok(!ret, "IsValidLocaleName should have failed\n");
>>      ret = pIsValidLocaleName(LOCALE_NAME_INVARIANT);
>>      ok(ret, "IsValidLocaleName failed\n");
>> +    ret = pIsValidLocaleName(NULL);
>> +    ok(!ret, "IsValidLocaleName should have failed\n");
>>  }
>>
>>  static void test_CompareStringOrdinal(void)
>> --
>> 2.8.1
> 
> Hi Nikolay,
> 
> I'm just curious what application this fixes? Or was this something you
> found while writing tests for something else?
> 

Yes, it's for dwrite tests I haven't sent yet, for
CreateNumberSubstitution() that checks for locale name validity.




More information about the wine-devel mailing list