dmitry          Wed Oct  1 08:39:49 2008 UTC

  Modified files:              (Branch: PHP_5_2)
    /php-src    NEWS 
    /php-src/ext/soap   php_encoding.c 
  Log:
  Fixed bug #43045 (SOAP encoding violation on "INF" for type double/float)
  
  
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1233&r2=1.2027.2.547.2.1234&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.1233 php-src/NEWS:1.2027.2.547.2.1234
--- php-src/NEWS:1.2027.2.547.2.1233    Sun Sep 28 12:02:59 2008
+++ php-src/NEWS        Wed Oct  1 08:39:49 2008
@@ -133,6 +133,8 @@
   (Jani)
 - Fixed bug #42318 (problem with nm on AIX, not finding object files). (Dmitry)
 - Fixed bug #41348 (OCI8: allow compilation with Oracle 8.1). (Chris Jones)
+- Fixed bug #43045 (SOAP encoding violation on "INF" for type double/float).
+  (Dmitry)
 
 01 May 2008, PHP 5.2.6
 - Fixed two possible crashes inside posix extension (Tony)
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_encoding.c?r1=1.103.2.21.2.39&r2=1.103.2.21.2.40&diff_format=u
Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.39 
php-src/ext/soap/php_encoding.c:1.103.2.21.2.40
--- php-src/ext/soap/php_encoding.c:1.103.2.21.2.39     Mon Dec 31 07:20:11 2007
+++ php-src/ext/soap/php_encoding.c     Wed Oct  1 08:39:49 2008
@@ -17,7 +17,7 @@
   |          Dmitry Stogov <[EMAIL PROTECTED]>                             |
   +----------------------------------------------------------------------+
 */
-/* $Id: php_encoding.c,v 1.103.2.21.2.39 2007/12/31 07:20:11 sebastian Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.40 2008/10/01 08:39:49 dmitry Exp $ */
 
 #include <time.h>
 
@@ -1014,7 +1014,15 @@
                                        Z_DVAL_P(ret) = dval;
                                        break;
                                default:
-                                       soap_error0(E_ERROR, "Encoding: 
Violation of encoding rules");
+                                       if 
(strncasecmp((char*)data->children->content, "NaN", sizeof("NaN")-1) == 0) {
+                                               ZVAL_DOUBLE(ret, php_get_nan());
+                                       } else if 
(strncasecmp((char*)data->children->content, "INF", sizeof("INF")-1) == 0) {
+                                               ZVAL_DOUBLE(ret, php_get_inf());
+                                       } else if 
(strncasecmp((char*)data->children->content, "-INF", sizeof("-INF")-1) == 0) {
+                                               ZVAL_DOUBLE(ret, 
-php_get_inf());
+                                       } else {
+                                               soap_error0(E_ERROR, "Encoding: 
Violation of encoding rules");
+                                       }
                        }
                } else {
                        soap_error0(E_ERROR, "Encoding: Violation of encoding 
rules");



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

Reply via email to