]> granicus.if.org Git - icu/commitdiff
Revert "ICU-21569 Remove extra LocalUResourceBundlePointer" revert-1716-ICU-21569-Rm-ShandowFDictRes 1720/head
authorFrank Yung-Fong Tang <ftang@google.com>
Fri, 14 May 2021 19:03:36 +0000 (12:03 -0700)
committerGitHub <noreply@github.com>
Fri, 14 May 2021 19:03:36 +0000 (12:03 -0700)
This reverts commit b96a806c8f7f9d03c439c3430c236eb9607bed22.

icu4c/source/common/lstmbe.cpp

index 3da2289a1a3bbaf8376a879227455853ee8a3e45..b1f0cdd10aa6252e4e8ac1918a5265405bdba461 100644 (file)
@@ -408,19 +408,18 @@ LSTMData::LSTMData(UResourceBundle* rb, UErrorCode &status)
     int32_t data_len = 0;
     const int32_t* data = ures_getIntVector(fDataRes, &data_len, &status);
     if (U_FAILURE(status)) return;
-    fDictRes = ures_getByKey(rb, "dict", nullptr, &status);
-    if (U_FAILURE(status)) return;
-    U_ASSERT(fDictRes != nullptr);
-    int32_t num_index = ures_getSize(fDictRes);
+    LocalUResourceBundlePointer fDictRes(
+        ures_getByKey(rb, "dict", nullptr, &status));
+    int32_t num_index = ures_getSize(fDictRes.getAlias());
     fDict = uhash_open(uhash_hashUChars, uhash_compareUChars, nullptr, &status);
     if (U_FAILURE(status)) return;
 
-    ures_resetIterator(fDictRes);
+    ures_resetIterator(fDictRes.getAlias());
     int32_t idx = 0;
     // put dict into hash
-    while(ures_hasNext(fDictRes)) {
+    while(ures_hasNext(fDictRes.getAlias())) {
         const char *tempKey = nullptr;
-        const UChar* str = ures_getNextString(fDictRes, nullptr, &tempKey, &status);
+        const UChar* str = ures_getNextString(fDictRes.getAlias(), nullptr, &tempKey, &status);
         if (U_FAILURE(status)) return;
         uhash_putiAllowZero(fDict, (void*)str, idx++, &status);
         if (U_FAILURE(status)) return;