File icu-CVE-2010-4409.patch of Package icu
Index: icu/source/i18n/unum.cpp
===================================================================
--- icu.orig/source/i18n/unum.cpp
+++ icu/source/i18n/unum.cpp
@@ -755,7 +755,7 @@ unum_getSymbol(const UNumberFormat *fmt,
return 0;
}
- if(fmt==NULL || (uint16_t)symbol>=UNUM_FORMAT_SYMBOL_COUNT) {
+ if(fmt==NULL || symbol< 0 || symbol>=UNUM_FORMAT_SYMBOL_COUNT) {
*status=U_ILLEGAL_ARGUMENT_ERROR;
return 0;
}
@@ -782,7 +782,7 @@ unum_setSymbol(UNumberFormat *fmt,
return;
}
- if(fmt==NULL || (uint16_t)symbol>=UNUM_FORMAT_SYMBOL_COUNT || value==NULL || length<-1) {
+ if(fmt==NULL || symbol< 0 || symbol>=UNUM_FORMAT_SYMBOL_COUNT || value==NULL || length<-1) {
*status=U_ILLEGAL_ARGUMENT_ERROR;
return;
}