From 31a4a9113d2db9dbcb223473cfcfe5f99b2bd9ab Mon Sep 17 00:00:00 2001 From: Markus Scherer Date: Tue, 28 Aug 2012 16:47:58 +0000 Subject: [PATCH] ICU-7168 always initialize UErrorCode, and check in at least one place coming in from public API X-SVN-Rev: 32268 --- icu4c/source/common/listformatter.cpp | 5 ++++- icu4c/source/test/intltest/listformattertest.cpp | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/icu4c/source/common/listformatter.cpp b/icu4c/source/common/listformatter.cpp index 1daf7b18391..851c1702b0d 100644 --- a/icu4c/source/common/listformatter.cpp +++ b/icu4c/source/common/listformatter.cpp @@ -167,6 +167,9 @@ void ListFormatter::addDataToHash( const ListFormatData* ListFormatter::getListFormatData( const Locale& locale, UErrorCode& errorCode) { + if (U_FAILURE(errorCode)) { + return NULL; + } { Mutex m(&listFormatterMutex); if (listPatternHash == NULL) { @@ -285,7 +288,7 @@ UnicodeString& ListFormatter::format(const UnicodeString items[], int32_t nItems * originalString. */ void ListFormatter::addNewString(const UnicodeString& pat, UnicodeString& originalString, - const UnicodeString& nextString, UErrorCode& errorCode) const { + const UnicodeString& nextString, UErrorCode& errorCode) const { if (U_FAILURE(errorCode)) { return; } diff --git a/icu4c/source/test/intltest/listformattertest.cpp b/icu4c/source/test/intltest/listformattertest.cpp index ec7b3cfe450..1d5a5a93a70 100644 --- a/icu4c/source/test/intltest/listformattertest.cpp +++ b/icu4c/source/test/intltest/listformattertest.cpp @@ -69,7 +69,7 @@ void ListFormatterTest::TestLocaleFallback() { for(int j = 1; j < 4; ++j) { Locale in(testData[i][j-1]); Locale out; - UErrorCode errorCode; + UErrorCode errorCode = U_ZERO_ERROR; ListFormatter::getFallbackLocale(in, out, errorCode); if (U_FAILURE(errorCode)) { errln("Error in getLocaleFallback: %s", u_errorName(errorCode)); -- 2.40.0