]> granicus.if.org Git - php/commitdiff
Added missing lazy initialization
authorDmitry Stogov <dmitry@php.net>
Tue, 29 Apr 2008 09:18:54 +0000 (09:18 +0000)
committerDmitry Stogov <dmitry@php.net>
Tue, 29 Apr 2008 09:18:54 +0000 (09:18 +0000)
Zend/zend_execute_API.c
ext/spl/php_spl.c

index b3a329b05fba9073441dbbc407a74ebbd98488a4..ca4cc2b2987009e382537747c0bd2708d938426c 100644 (file)
@@ -1456,6 +1456,9 @@ ZEND_API int zend_u_eval_string(zend_uchar type, zstr string, zval *retval_ptr,
                EG(return_value_ptr_ptr) = &local_retval_ptr;
                EG(active_op_array) = new_op_array;
                EG(no_extensions)=1;
+               if (!EG(active_symbol_table)) {
+                       zend_rebuild_symbol_table(TSRMLS_C);
+               }
 
                zend_execute(new_op_array TSRMLS_CC);
 
index 75bbe6284a7f6393140eb5b19379bfe4efb61e0e..8212f5f84fda13c997581ea01efe60b31fd16db0 100755 (executable)
@@ -238,6 +238,9 @@ int spl_autoload(const zstr class_name, const zstr lc_name, int class_name_len,
                if (new_op_array) {
                        EG(return_value_ptr_ptr) = &result;
                        EG(active_op_array) = new_op_array;
+                       if (!EG(active_symbol_table)) {
+                               zend_rebuild_symbol_table(TSRMLS_C);
+                       }
 
                        zend_execute(new_op_array TSRMLS_CC);