Snap for 8055317 from e00b7a33847832df81b9f5bfc4c5df0be2e4d863 to sc-v2-release

Change-Id: Ic46f024f67f01cf60245d188079e4ecf14a35db7
diff --git a/icu4c/source/test/cintltst/ccaltst.c b/icu4c/source/test/cintltst/ccaltst.c
index b6412c8..57cfe1d 100644
--- a/icu4c/source/test/cintltst/ccaltst.c
+++ b/icu4c/source/test/cintltst/ccaltst.c
@@ -118,6 +118,7 @@
     char tempMsgBuf2[256];  // u_austrcpy() of some formatted dates & times.
     UChar zone1[64], zone2[64];
     const char *tzver = 0;
+    int32_t tzverLen = 0;
     UChar canonicalID[64];
     UBool isSystemID = FALSE;
     const UCalGetTypeTest * ucalGetTypeTestPtr;
@@ -272,10 +273,13 @@
     tzver = ucal_getTZDataVersion(&status);
     if (U_FAILURE(status)) {
         log_err_status(status, "FAIL: ucal_getTZDataVersion() => %s\n", u_errorName(status));
-    } else if (uprv_strlen(tzver) != 5 /*4 digits + 1 letter*/) {
-        log_err("FAIL: Bad version string was returned by ucal_getTZDataVersion\n");
     } else {
-        log_verbose("PASS: ucal_getTZDataVersion returned %s\n", tzver);
+        tzverLen = uprv_strlen(tzver);
+        if (tzverLen == 5 || tzverLen == 6 /* 4 digits + 1 or 2 letters */) {
+            log_verbose("PASS: ucal_getTZDataVersion returned %s\n", tzver);
+        } else {
+            log_err("FAIL: Bad version string was returned by ucal_getTZDataVersion\n");
+        }
     }
     
     /*Testing ucal_getCanonicalTimeZoneID*/
diff --git a/icu4c/source/test/intltest/tztest.cpp b/icu4c/source/test/intltest/tztest.cpp
index b877db5..3763700 100644
--- a/icu4c/source/test/intltest/tztest.cpp
+++ b/icu4c/source/test/intltest/tztest.cpp
@@ -152,10 +152,13 @@
     const char* tzver = TimeZone::getTZDataVersion(status);
     if (U_FAILURE(status)) {
         errcheckln(status, "FAIL: getTZDataVersion failed - %s", u_errorName(status));
-    } else if (uprv_strlen(tzver) != 5 /* 4 digits + 1 letter */) {
-        errln((UnicodeString)"FAIL: getTZDataVersion returned " + tzver);
     } else {
-        logln((UnicodeString)"tzdata version: " + tzver);
+        int32_t tzverLen = uprv_strlen(tzver);
+        if (tzverLen == 5 || tzverLen == 6 /* 4 digits + 1 or 2 letters */) {
+            logln((UnicodeString)"tzdata version: " + tzver);
+        } else {
+            errln((UnicodeString)"FAIL: getTZDataVersion returned " + tzver);
+        }
     }
 }
 
diff --git a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/timezone/TimeZoneTest.java b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/timezone/TimeZoneTest.java
index 180894d..1388088 100644
--- a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/timezone/TimeZoneTest.java
+++ b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/timezone/TimeZoneTest.java
@@ -551,10 +551,10 @@
 
 
         String tzver = TimeZone.getTZDataVersion();
-        if (tzver.length() != 5 /* 4 digits + 1 letter */) {
-            errln("FAIL: getTZDataVersion returned " + tzver);
-        } else {
+        if (tzver != null && (tzver.length() == 5 || tzver.length() == 6) /* 4 digits + 1 or 2 letters */ ) {
             logln("PASS: tzdata version: " + tzver);
+        } else {
+            errln("FAIL: getTZDataVersion returned " + tzver);
         }
     }