felipe          Wed Mar 12 19:13:01 2008 UTC

  Added files:                 (Branch: PHP_5_2)
    /php-src/ext/standard/tests/array   bug42177.phpt 

  Modified files:              
    /php-src    NEWS 
    /php-src/ext/standard       array.c 
  Log:
  Fixed bug #42177 (Warning "array_merge_recursive(): recursion detected" comes 
again...)
  
  
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1115&r2=1.2027.2.547.2.1116&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.1115 php-src/NEWS:1.2027.2.547.2.1116
--- php-src/NEWS:1.2027.2.547.2.1115    Wed Mar 12 17:33:14 2008
+++ php-src/NEWS        Wed Mar 12 19:13:00 2008
@@ -4,6 +4,8 @@
 - Fixed bug #44394 (Last two bytes missing from output). (Felipe)
 - Fixed bug #44388 (Crash inside exif_read_data() on invalid images) (Ilia)
 - Fixed bug #44373 (PDO_OCI extension compile failed). (Felipe)
+- Fixed bug #42177 (Warning "array_merge_recursive(): recursion detected" 
comes 
+  again...). (Felipe)
 
 06 Mar 2008, PHP 5.2.6RC2
 - Fixed bug #44333 (SEGFAULT when using mysql_pconnect() with client_flags).
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/array.c?r1=1.308.2.21.2.54&r2=1.308.2.21.2.55&diff_format=u
Index: php-src/ext/standard/array.c
diff -u php-src/ext/standard/array.c:1.308.2.21.2.54 
php-src/ext/standard/array.c:1.308.2.21.2.55
--- php-src/ext/standard/array.c:1.308.2.21.2.54        Wed Feb 27 02:04:08 2008
+++ php-src/ext/standard/array.c        Wed Mar 12 19:13:00 2008
@@ -21,7 +21,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: array.c,v 1.308.2.21.2.54 2008/02/27 02:04:08 felipe Exp $ */
+/* $Id: array.c,v 1.308.2.21.2.55 2008/03/12 19:13:00 felipe Exp $ */
 
 #include "php.h"
 #include "php_ini.h"
@@ -2305,7 +2305,7 @@
                                if (recursive && zend_hash_find(dest, 
string_key, string_key_len, (void **)&dest_entry) == SUCCESS) {
                                        HashTable *thash = HASH_OF(*dest_entry);
 
-                                       if ((thash && thash->nApplyCount > 1) 
|| (*src_entry == *dest_entry && ((*dest_entry)->refcount % 2))) {
+                                       if ((thash && thash->nApplyCount > 1) 
|| (*src_entry == *dest_entry && (*dest_entry)->is_ref && 
((*dest_entry)->refcount % 2))) {
                                                php_error_docref(NULL 
TSRMLS_CC, E_WARNING, "recursion detected");
                                                return 0;
                                        }

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/bug42177.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/bug42177.phpt
+++ php-src/ext/standard/tests/array/bug42177.phpt



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

Reply via email to