helly Sat May 31 11:22:42 2003 EDT Modified files: /spl spl_foreach.c Log: Fix precondition Index: spl/spl_foreach.c diff -u spl/spl_foreach.c:1.8 spl/spl_foreach.c:1.9 --- spl/spl_foreach.c:1.8 Thu May 29 17:08:08 2003 +++ spl/spl_foreach.c Sat May 31 11:22:42 2003 @@ -54,13 +54,15 @@ zval **obj, *retval; spl_foreach_proxy proxy; zend_class_entry *instance_ce; - spl_is_a is_a = 0; + spl_is_a is_a; obj = spl_get_zval_ptr_ptr(&EX(opline)->op1, EX(Ts) TSRMLS_CC); - if (obj && (instance_ce = spl_get_class_entry(*obj TSRMLS_CC)) != NULL) { - is_a = spl_implements(instance_ce); + if (!obj || (instance_ce = spl_get_class_entry(*obj TSRMLS_CC)) == NULL) { + ZEND_EXECUTE_HOOK_ORIGINAL(ZEND_FE_RESET); } + + is_a = spl_implements(instance_ce); if (is_a & SPL_IS_A_ITERATOR) { spl_unlock_zval_ptr_ptr(&EX(opline)->op1, EX(Ts) TSRMLS_CC);
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php