X-Git-Url: https://git.saurik.com/apple/icu.git/blobdiff_plain/729e4ab9bc6618bc3d8a898e575df7f4019e29ca..refs/heads/master:/icuSources/test/perf/collationperf/collperf.cpp diff --git a/icuSources/test/perf/collationperf/collperf.cpp b/icuSources/test/perf/collationperf/collperf.cpp index c9dd6c48..33e3e6c6 100644 --- a/icuSources/test/perf/collationperf/collperf.cpp +++ b/icuSources/test/perf/collationperf/collperf.cpp @@ -1,8 +1,12 @@ -/******************************************************************** +/*********************************************************************** + * © 2016 and later: Unicode, Inc. and others. + * License & terms of use: http://www.unicode.org/copyright.html#License + *********************************************************************** + *********************************************************************** * COPYRIGHT: - * Copyright (C) 2001-2010 IBM, Inc. All Rights Reserved. + * Copyright (C) 2001-2012 IBM, Inc. All Rights Reserved. * - ********************************************************************/ + ***********************************************************************/ /******************************************************************************** * * File CALLCOLL.C @@ -370,7 +374,6 @@ void doKeyGen() int line; int loops = 0; int iLoop; - int t; int len=-1; // Adjust loop count to compensate for file size. Should be order n @@ -388,9 +391,9 @@ void doKeyGen() len = gFileLines[line].len; } for (iLoop=0; iLoop < opt_iLoopCount; iLoop++) { - t=LCMapStringW(gWinLCID, LCMAP_SORTKEY, + LCMapStringW(gWinLCID, LCMAP_SORTKEY, gFileLines[line].name, len, - (unsigned short *)gFileLines[line].winSortKey, 5000); // TODO something with length. + (UChar *)gFileLines[line].winSortKey, 5000); // TODO something with length. } } } @@ -403,7 +406,7 @@ void doKeyGen() len = gFileLines[line].len; } for (iLoop=0; iLoop < opt_iLoopCount; iLoop++) { - t = ucol_getSortKey(gCol, gFileLines[line].name, len, (unsigned char *)gFileLines[line].icuSortKey, 5000); + ucol_getSortKey(gCol, gFileLines[line].name, len, (unsigned char *)gFileLines[line].icuSortKey, 5000); } } } @@ -413,7 +416,7 @@ void doKeyGen() for (loops=0; loops= 0x10000) { @@ -1377,6 +1380,7 @@ UCollator *openRulesCollator() { int bufLen = 10000; UChar *buf = (UChar *)malloc(bufLen * sizeof(UChar)); + UChar *tmp; int i = 0; for(;;) { @@ -1389,8 +1393,13 @@ UCollator *openRulesCollator() { } i++; if (i >= bufLen) { + tmp = buf; bufLen += 10000; buf = (UChar *)realloc(buf, bufLen); + if (buf == NULL) { + free(tmp); + return 0; + } } } buf[i] = 0; @@ -1627,7 +1636,7 @@ int main(int argc, const char** argv) { t=LCMapStringW(gWinLCID, LCMAP_SORTKEY, gFileLines[line].name, -1, buf, sizeof(buf)); gFileLines[line].winSortKey = new char[t]; if (t > (int32_t)sizeof(buf)) { - t = LCMapStringW(gWinLCID, LCMAP_SORTKEY, gFileLines[line].name, -1, (unsigned short *)(gFileLines[line].winSortKey), t); + t = LCMapStringW(gWinLCID, LCMAP_SORTKEY, gFileLines[line].name, -1, (UChar *)(gFileLines[line].winSortKey), t); } else {