From 1edbceb16f7f54c535d4a8416cf2c34691e484bc Mon Sep 17 00:00:00 2001 From: Filip Navara Date: Sun, 3 Feb 2019 03:20:45 +0100 Subject: [PATCH] Fix error handling in GetLocaleIso639LanguageTwoLetterName --- src/corefx/System.Globalization.Native/pal_localeStringData.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/corefx/System.Globalization.Native/pal_localeStringData.c b/src/corefx/System.Globalization.Native/pal_localeStringData.c index d17e667..f8c9e87 100644 --- a/src/corefx/System.Globalization.Native/pal_localeStringData.c +++ b/src/corefx/System.Globalization.Native/pal_localeStringData.c @@ -72,12 +72,14 @@ UErrorCode GetLocaleIso639LanguageTwoLetterName(const char* locale, UChar* value UErrorCode status = U_ZERO_ERROR; int32_t length = uloc_getLanguage(locale, NULL, 0, &status) + 1; + assert(status == U_BUFFER_OVERFLOW_ERROR); char* buf = calloc(length, sizeof(char)); if (buf == NULL) { return U_MEMORY_ALLOCATION_ERROR; } + status = U_ZERO_ERROR; uloc_getLanguage(locale, buf, length, &status); if (U_SUCCESS(status)) -- 2.7.4