dmitry          Tue Jul 29 14:28:11 2008 UTC

  Modified files:              (Branch: PHP_5_3)
    /ZendEngine2        zend_exceptions.c 
    /php-src/ext/spl/tests      iterator_041b.phpt 
  Log:
  Fixed memory leak
  
  
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_exceptions.c?r1=1.79.2.6.2.9.2.12&r2=1.79.2.6.2.9.2.13&diff_format=u
Index: ZendEngine2/zend_exceptions.c
diff -u ZendEngine2/zend_exceptions.c:1.79.2.6.2.9.2.12 
ZendEngine2/zend_exceptions.c:1.79.2.6.2.9.2.13
--- ZendEngine2/zend_exceptions.c:1.79.2.6.2.9.2.12     Thu Jul 24 19:52:23 2008
+++ ZendEngine2/zend_exceptions.c       Tue Jul 29 14:28:11 2008
@@ -19,7 +19,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_exceptions.c,v 1.79.2.6.2.9.2.12 2008/07/24 19:52:23 felipe Exp $ 
*/
+/* $Id: zend_exceptions.c,v 1.79.2.6.2.9.2.13 2008/07/29 14:28:11 dmitry Exp $ 
*/
 
 #include "zend.h"
 #include "zend_API.h"
@@ -52,6 +52,7 @@
                previous = zend_read_property(default_exception_ce, exception, 
"previous", sizeof("previous")-1, 1 TSRMLS_CC);
                if (Z_TYPE_P(previous) == IS_NULL) {
                        zend_update_property(default_exception_ce, exception, 
"previous", sizeof("previous")-1, add_previous TSRMLS_CC);
+                       Z_DELREF_P(add_previous);
                        return;
                }
                exception = previous;
http://cvs.php.net/viewvc.cgi/php-src/ext/spl/tests/iterator_041b.phpt?r1=1.1.2.4.2.1&r2=1.1.2.4.2.2&diff_format=u
Index: php-src/ext/spl/tests/iterator_041b.phpt
diff -u php-src/ext/spl/tests/iterator_041b.phpt:1.1.2.4.2.1 
php-src/ext/spl/tests/iterator_041b.phpt:1.1.2.4.2.2
--- php-src/ext/spl/tests/iterator_041b.phpt:1.1.2.4.2.1        Sat May 24 
14:10:44 2008
+++ php-src/ext/spl/tests/iterator_041b.phpt    Tue Jul 29 14:28:11 2008
@@ -101,5 +101,10 @@
 State 4: current()
 State 5: key()
 State 6: next()
-
-Fatal error: Ignoring exception from MyArrayIterator::__destruct() while an 
exception is already active (Uncaught Exception in %s on line %d) in 
%siterator_041b.php on line %d
+===iterator_count===
+State 0: __construct()
+State 1: __construct()
+State 2: rewind()
+State 3: valid()
+State 6: next()
+===DONE===



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

Reply via email to