]> granicus.if.org Git - icu/commitdiff
ICU-13457 Adjust Calendar buffer overrun fix for compatibility with AIX compiler...
authorAndy Heninger <andy.heninger@gmail.com>
Tue, 12 Dec 2017 21:49:51 +0000 (21:49 +0000)
committerAndy Heninger <andy.heninger@gmail.com>
Tue, 12 Dec 2017 21:49:51 +0000 (21:49 +0000)
X-SVN-Rev: 40723

icu4c/source/i18n/calendar.cpp

index 4e22dff264456fedc8b1a438dc890562c62cfd37..092dc4c1d9e558709166bad139ed8c9213a2030d 100644 (file)
@@ -706,10 +706,10 @@ fTime(0),
 fLenient(TRUE),
 fZone(NULL),
 fRepeatedWallTime(UCAL_WALLTIME_LAST),
-fSkippedWallTime(UCAL_WALLTIME_LAST),
-validLocale(""),
-actualLocale("")
+fSkippedWallTime(UCAL_WALLTIME_LAST)
 {
+    validLocale[0] = 0;
+    actualLocale[0] = 0;
     clear();
     if (U_FAILURE(success)) {
         return;
@@ -734,10 +734,10 @@ fTime(0),
 fLenient(TRUE),
 fZone(NULL),
 fRepeatedWallTime(UCAL_WALLTIME_LAST),
-fSkippedWallTime(UCAL_WALLTIME_LAST),
-validLocale(""),
-actualLocale("")
+fSkippedWallTime(UCAL_WALLTIME_LAST)
 {
+    validLocale[0] = 0;
+    actualLocale[0] = 0;
     if (U_FAILURE(success)) {
         return;
     }
@@ -768,10 +768,10 @@ fTime(0),
 fLenient(TRUE),
 fZone(NULL),
 fRepeatedWallTime(UCAL_WALLTIME_LAST),
-fSkippedWallTime(UCAL_WALLTIME_LAST),
-validLocale(""),
-actualLocale("")
+fSkippedWallTime(UCAL_WALLTIME_LAST)
 {
+    validLocale[0] = 0;
+    actualLocale[0] = 0;
     if (U_FAILURE(success)) {
         return;
     }
@@ -830,6 +830,8 @@ Calendar::operator=(const Calendar &right)
         fNextStamp               = right.fNextStamp;
         uprv_strncpy(validLocale, right.validLocale, sizeof(validLocale));
         uprv_strncpy(actualLocale, right.actualLocale, sizeof(actualLocale));
+        validLocale[sizeof(validLocale)-1] = 0;
+        actualLocale[sizeof(validLocale)-1] = 0;
     }
 
     return *this;