tony2001                Thu Jul 20 09:33:16 2006 UTC

  Modified files:              
    /php-src/ext/json   json.c 
    /php-src/ext/json/tests     003.phpt 004.phpt 005.phpt 
  Log:
  use E_WARNING on recursion and add null to the result to keep it valid
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/json/json.c?r1=1.12&r2=1.13&diff_format=u
Index: php-src/ext/json/json.c
diff -u php-src/ext/json/json.c:1.12 php-src/ext/json/json.c:1.13
--- php-src/ext/json/json.c:1.12        Thu Jul 20 08:56:24 2006
+++ php-src/ext/json/json.c     Thu Jul 20 09:33:15 2006
@@ -16,7 +16,7 @@
   +----------------------------------------------------------------------+
 */
 
-/* $Id: json.c,v 1.12 2006/07/20 08:56:24 tony2001 Exp $ */
+/* $Id: json.c,v 1.13 2006/07/20 09:33:15 tony2001 Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -136,7 +136,8 @@
     }
 
     if (myht && myht->nApplyCount > 1) {
-        php_error_docref(NULL TSRMLS_CC, E_RECOVERABLE_ERROR, "recursion 
detected");
+        php_error_docref(NULL TSRMLS_CC, E_WARNING, "recursion detected");
+        smart_str_appendl(buf, "null", 4);
         return;
     }
 
http://cvs.php.net/viewvc.cgi/php-src/ext/json/tests/003.phpt?r1=1.1&r2=1.2&diff_format=u
Index: php-src/ext/json/tests/003.phpt
diff -u php-src/ext/json/tests/003.phpt:1.1 php-src/ext/json/tests/003.phpt:1.2
--- php-src/ext/json/tests/003.phpt:1.1 Thu Jul 20 08:56:24 2006
+++ php-src/ext/json/tests/003.phpt     Thu Jul 20 09:33:15 2006
@@ -25,4 +25,6 @@
   }
 }
 
-Catchable fatal error: json_encode(): recursion detected in %s on line %d
+Warning: json_encode(): recursion detected in %s on line %d
+string(8) "[[null]]"
+Done
http://cvs.php.net/viewvc.cgi/php-src/ext/json/tests/004.phpt?r1=1.1&r2=1.2&diff_format=u
Index: php-src/ext/json/tests/004.phpt
diff -u php-src/ext/json/tests/004.phpt:1.1 php-src/ext/json/tests/004.phpt:1.2
--- php-src/ext/json/tests/004.phpt:1.1 Thu Jul 20 08:56:24 2006
+++ php-src/ext/json/tests/004.phpt     Thu Jul 20 09:33:15 2006
@@ -22,4 +22,6 @@
   }
 }
 
-Catchable fatal error: json_encode(): recursion detected in %s on line %d
+Warning: json_encode(): recursion detected in %s on line %d
+string(22) "{"prop":{"prop":null}}"
+Done
http://cvs.php.net/viewvc.cgi/php-src/ext/json/tests/005.phpt?r1=1.1&r2=1.2&diff_format=u
Index: php-src/ext/json/tests/005.phpt
diff -u php-src/ext/json/tests/005.phpt:1.1 php-src/ext/json/tests/005.phpt:1.2
--- php-src/ext/json/tests/005.phpt:1.1 Thu Jul 20 08:56:24 2006
+++ php-src/ext/json/tests/005.phpt     Thu Jul 20 09:33:15 2006
@@ -22,4 +22,6 @@
   }
 }
 
-Catchable fatal error: json_encode(): recursion detected in %s on line %d
+Warning: json_encode(): recursion detected in %s on line %d
+string(8) "[[null]]"
+Done

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

Reply via email to