X-Git-Url: https://git.saurik.com/apple/icu.git/blobdiff_plain/4388f060552cc537e71e957d32f35e9d75a61233..ef6cf650f4a75c3f97de06b51fa104f2069b9ea2:/icuSources/tools/toolutil/pkgitems.cpp diff --git a/icuSources/tools/toolutil/pkgitems.cpp b/icuSources/tools/toolutil/pkgitems.cpp index 4a5a7218..8a20981f 100644 --- a/icuSources/tools/toolutil/pkgitems.cpp +++ b/icuSources/tools/toolutil/pkgitems.cpp @@ -1,7 +1,7 @@ /* ******************************************************************************* * -* Copyright (C) 2003-2011, International Business Machines +* Copyright (C) 2003-2015, International Business Machines * Corporation and others. All Rights Reserved. * ******************************************************************************* @@ -43,8 +43,6 @@ // general definitions ----------------------------------------------------- *** -#define LENGTHOF(array) (int32_t)(sizeof(array)/sizeof((array)[0])) - U_CDECL_BEGIN static void U_CALLCONV @@ -412,7 +410,8 @@ ures_enumDependencies(const char *itemName, const UDataInfo *pInfo, fprintf(stderr, "icupkg: %s is not a pool bundle\n", poolName); return; } - const int32_t *poolIndexes=(const int32_t *)nativePool.getBytes()+1; + const int32_t *poolRoot=(const int32_t *)nativePool.getBytes(); + const int32_t *poolIndexes=poolRoot+1; int32_t poolIndexLength=poolIndexes[URES_INDEX_LENGTH]&0xff; if(!(poolIndexLength>URES_INDEX_POOL_CHECKSUM && (poolIndexes[URES_INDEX_ATTRIBUTES]&URES_ATT_IS_POOL_BUNDLE)) @@ -422,6 +421,7 @@ ures_enumDependencies(const char *itemName, const UDataInfo *pInfo, } if(resData.pRoot[1+URES_INDEX_POOL_CHECKSUM]==poolIndexes[URES_INDEX_POOL_CHECKSUM]) { resData.poolBundleKeys=(const char *)(poolIndexes+poolIndexLength); + resData.poolBundleStrings=(const uint16_t *)(poolRoot+poolIndexes[URES_INDEX_KEYS_TOP]); } else { fprintf(stderr, "icupkg: %s has mismatched checksum for %s\n", poolName, itemName); return;