iliaa           Mon Dec 13 19:40:02 2004 EDT

  Modified files:              (Branch: PHP_4_3)
    /php-src    NEWS 
    /php-src/ext/standard       math.c 
  Log:
  MFH: Fixed bug #28228 (NULL decimal separator is not being handled correctly).
  
  
http://cvs.php.net/diff.php/php-src/NEWS?r1=1.1247.2.770&r2=1.1247.2.771&ty=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.1247.2.770 php-src/NEWS:1.1247.2.771
--- php-src/NEWS:1.1247.2.770   Thu Dec  9 09:26:39 2004
+++ php-src/NEWS        Mon Dec 13 19:40:01 2004
@@ -5,6 +5,8 @@
 - Fixed bug #31024 (Crash in fgetcsv() with negative length). (Ilia)
 - Fixed bug #31019 (Logic error mssql library checking). (Frank)
 - Fixed bug #28598 (Lost support for MS Symbol fonts). (Pierre)
+- Fixed bug #28228 (NULL decimal separator is not being handled correctly).
+  (Ilia)
 
 07 Dec 2004, Version 4.3.10RC2
 - Fixed bug #30995 (snmp extension does not build with net-snmp 5.2). (Ilia)
http://cvs.php.net/diff.php/php-src/ext/standard/math.c?r1=1.97.2.12&r2=1.97.2.13&ty=u
Index: php-src/ext/standard/math.c
diff -u php-src/ext/standard/math.c:1.97.2.12 
php-src/ext/standard/math.c:1.97.2.13
--- php-src/ext/standard/math.c:1.97.2.12       Thu Jun 10 15:38:26 2004
+++ php-src/ext/standard/math.c Mon Dec 13 19:40:01 2004
@@ -19,7 +19,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: math.c,v 1.97.2.12 2004/06/10 19:38:26 iliaa Exp $ */
+/* $Id: math.c,v 1.97.2.13 2004/12/14 00:40:01 iliaa Exp $ */
 
 #include "php.h"
 #include "php_math.h"
@@ -1136,17 +1136,22 @@
                }
                convert_to_double_ex(num);
                convert_to_long_ex(dec);
-               convert_to_string_ex(d_p);
-               convert_to_string_ex(t_s);
-               if (Z_STRLEN_PP(d_p)==1) {
-                       dec_point=Z_STRVAL_PP(d_p)[0];
-               } else if (Z_STRLEN_PP(d_p)==0) {
-                       dec_point=0;
+
+               if (Z_TYPE_PP(d_p) != IS_NULL) {
+                       convert_to_string_ex(d_p);
+                       if (Z_STRLEN_PP(d_p)==1) {
+                               dec_point=Z_STRVAL_PP(d_p)[0];
+                       } else if (Z_STRLEN_PP(d_p)==0) {
+                               dec_point=0;
+                       }
                }
-               if (Z_STRLEN_PP(t_s)==1) {
-                       thousand_sep=Z_STRVAL_PP(t_s)[0];
-               } else if(Z_STRLEN_PP(t_s)==0) {
-                       thousand_sep=0;
+               if (Z_TYPE_PP(t_s) != IS_NULL) {
+                       convert_to_string_ex(t_s);
+                       if (Z_STRLEN_PP(t_s)==1) {
+                               thousand_sep=Z_STRVAL_PP(t_s)[0];
+                       } else if(Z_STRLEN_PP(t_s)==0) {
+                               thousand_sep=0;
+                       }
                }
                RETURN_STRING(_php_math_number_format(Z_DVAL_PP(num), 
Z_LVAL_PP(dec), dec_point, thousand_sep), 0);
                break;

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to