]> granicus.if.org Git - php/commitdiff
- Fixed bug #53512 (NumberFormatter::setSymbol crash on bogus $attr values)
authorFelipe Pena <felipe@php.net>
Fri, 10 Dec 2010 00:47:51 +0000 (00:47 +0000)
committerFelipe Pena <felipe@php.net>
Fri, 10 Dec 2010 00:47:51 +0000 (00:47 +0000)
NEWS
ext/intl/formatter/formatter_attr.c

diff --git a/NEWS b/NEWS
index 05093028d75599d9c2495a10c8763309bc4c4e6d..1073939d73988677d22d3a3ca14704618307456b 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,10 @@
 PHP                                                                        NEWS
 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
 ?? ??? 20??, PHP 5.3.5
+- Intl extension:
+  . Fixed bug #53512 (NumberFormatter::setSymbol crash on bogus $attr values).
+    (Felipe)
+
 - PDO Oracle driver:
   . Fixed bug #39199 (Cannot load Lob data with more than 4000 bytes on
     ORACLE 10). (spatar at mail dot nnov dot ru)
index 851b2b310ebc73c1d7ebd54b9377759770086bc1..46d61fb1fce5807b5934716e39bbfbff34ec6a44 100755 (executable)
@@ -311,6 +311,11 @@ PHP_FUNCTION( numfmt_set_symbol )
 
                RETURN_FALSE;
        }
+       
+       if (symbol >= UNUM_FORMAT_SYMBOL_COUNT || symbol < 0) {
+               intl_error_set( NULL, U_ILLEGAL_ARGUMENT_ERROR, "numfmt_set_symbol: invalid symbol value", 0 TSRMLS_CC );
+               RETURN_FALSE;
+       }
 
        /* Fetch the object. */
        FORMATTER_METHOD_FETCH_OBJECT;