From: Bruno Haible Date: Sat, 27 Apr 2019 18:00:29 +0000 (+0200) Subject: localename: Fix crash on mingw (regression from 2018-11-23). X-Git-Tag: v1.0~4969 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=00991ec9b670feb41b3726f1d7e7ff59b95e1317;p=gnulib.git localename: Fix crash on mingw (regression from 2018-11-23). * lib/localename.c (gl_locale_name_posix): Don't attempt to convert a locale name that is null. --- diff --git a/ChangeLog b/ChangeLog index 2aeef2e7f3..98b9c6c87e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2019-04-27 Bruno Haible + + localename: Fix crash on mingw (regression from 2018-11-23). + * lib/localename.c (gl_locale_name_posix): Don't attempt to convert a + locale name that is null. + 2019-04-27 Bruno Haible Fix gcc warnings on 64-bit mode mingw. diff --git a/lib/localename.c b/lib/localename.c index 1cb0a90f0d..1b1bb19bb8 100644 --- a/lib/localename.c +++ b/lib/localename.c @@ -3294,15 +3294,16 @@ gl_locale_name_posix (int category, const char *categoryname) /* Convert the locale name from the format returned by setlocale() or found in the environment variables to the XPG syntax. */ #if defined WINDOWS_NATIVE - { - /* Convert locale name to LCID. We don't want to use - LocaleNameToLCID because (a) it is only available since Vista, - and (b) it doesn't accept locale names returned by 'setlocale'. */ - LCID lcid = get_lcid (locname); + if (locname != NULL) + { + /* Convert locale name to LCID. We don't want to use + LocaleNameToLCID because (a) it is only available since Vista, + and (b) it doesn't accept locale names returned by 'setlocale'. */ + LCID lcid = get_lcid (locname); - if (lcid > 0) - return gl_locale_name_from_win32_LCID (lcid); - } + if (lcid > 0) + return gl_locale_name_from_win32_LCID (lcid); + } #endif return locname; }