From: Dmitry Stogov Date: Sun, 28 Mar 2004 09:37:30 +0000 (+0000) Subject: fix of fix related to __autoload. (ext/standard/tests/network/bug20134.phpt passes... X-Git-Tag: php-5.0.0RC2RC1~197 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=09d1d232fc57d57765f305929f5e5d75e25231e9;p=php fix of fix related to __autoload. (ext/standard/tests/network/bug20134.phpt passes again) --- diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index 6ecfe90b78..7db680089b 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -893,6 +893,14 @@ ZEND_API int zend_lookup_class(char *name, int name_length, zend_class_entry *** return SUCCESS; } + /* The compiler is not-reentrant. Make sure we __autoload() only during run-time + * (doesn't impact fuctionality of __autoload() + */ + if (zend_is_compiling(TSRMLS_C)) { + free_alloca(lc_name); + return FAILURE; + } + if (EG(in_autoload) == NULL) { ALLOC_HASHTABLE(EG(in_autoload)); zend_hash_init(EG(in_autoload), 0, NULL, NULL, 0); @@ -903,14 +911,6 @@ ZEND_API int zend_lookup_class(char *name, int name_length, zend_class_entry *** return FAILURE; } - /* The compiler is not-reentrant. Make sure we __autoload() only during run-time - * (doesn't impact fuctionality of __autoload() - */ - if (zend_is_compiling(TSRMLS_C)) { - free_alloca(lc_name); - return FAILURE; - } - ZVAL_STRINGL(&autoload_function, "__autoload", sizeof("__autoload")-1, 0); INIT_PZVAL(class_name_ptr);