From 7dce112ff1604f2e28616846cdc99532e2cb5a29 Mon Sep 17 00:00:00 2001 From: George Rhoten Date: Wed, 22 Mar 2006 09:48:15 +0000 Subject: [PATCH] ICU-4639 Make sure that the next enumeration function fails as expected. X-SVN-Rev: 19407 --- icu4c/source/i18n/csdetect.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/icu4c/source/i18n/csdetect.cpp b/icu4c/source/i18n/csdetect.cpp index d8923075b4b..877ea7c74bd 100644 --- a/icu4c/source/i18n/csdetect.cpp +++ b/icu4c/source/i18n/csdetect.cpp @@ -293,13 +293,14 @@ enumClose(UEnumeration *en) { } static int32_t U_CALLCONV -enumCount(UEnumeration *en, UErrorCode *status) { +enumCount(UEnumeration *, UErrorCode *) { return fCSRecognizers_size; } static const char* U_CALLCONV enumNext(UEnumeration *en, int32_t *resultLength, UErrorCode *status) { if(((Context *)en->context)->currIndex >= fCSRecognizers_size) { + *status = U_INDEX_OUTOFBOUNDS_ERROR; return NULL; } const char *currName = fCSRecognizers[((Context *)en->context)->currIndex]->getName(); @@ -310,7 +311,7 @@ enumNext(UEnumeration *en, int32_t *resultLength, UErrorCode *status) { } static void U_CALLCONV -enumReset(UEnumeration *en, UErrorCode *status) { +enumReset(UEnumeration *en, UErrorCode *) { ((Context *)en->context)->currIndex = 0; } @@ -324,7 +325,7 @@ static const UEnumeration gCSDetEnumeration = { enumReset }; -U_DRAFT UEnumeration * U_EXPORT2 +U_CAPI UEnumeration * U_EXPORT2 ucsdet_getAllDetectableCharsets(const UCharsetDetector *ucsd, UErrorCode *status) { if(U_FAILURE(*status)) {