From: Sara Golemon Date: Wed, 5 May 2004 18:18:57 +0000 (+0000) Subject: BugFix#28287 stream_*_register() not calling __autoload(). X-Git-Tag: RELEASE_0_1~287 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0180c36951d46810e76fd4f1a8eaa90d97a613a2;p=php BugFix#28287 stream_*_register() not calling __autoload(). --- diff --git a/NEWS b/NEWS index 0391bb245a..8c1152219a 100644 --- a/NEWS +++ b/NEWS @@ -2,6 +2,7 @@ PHP NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ?? ??? 2004, PHP 5 Release Candidate 3 - You may now use count() on COM arrays. (Wez) +- Fixed bug #28287 (stream_*_register() not calling __autoload()). (Sara) - Fixed bug #28161 (COM: Array style properties could not be accessed). (Wez) - Fixed bug #28125 (ArrayObject leaks when accessing elements). (Marcus) - Fixed bug #28099 (ArrayObject doesn't implement ArrayAccess). (Marcus) diff --git a/ext/standard/user_filters.c b/ext/standard/user_filters.c index e5289365bb..81a28f61a6 100644 --- a/ext/standard/user_filters.c +++ b/ext/standard/user_filters.c @@ -280,8 +280,8 @@ static php_stream_filter *user_filter_factory_create(const char *filtername, /* bind the classname to the actual class */ if (fdat->ce == NULL) { - if (FAILURE == zend_hash_find(EG(class_table), fdat->classname, strlen(fdat->classname)+1, - (void **)&fdat->ce)) { + if (FAILURE == zend_lookup_class(fdat->classname, strlen(fdat->classname), + (zend_class_entry ***)&fdat->ce TSRMLS_CC)) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "user-filter \"%s\" requires class \"%s\", but that class is not defined", filtername, fdat->classname); diff --git a/main/streams/userspace.c b/main/streams/userspace.c index 5ed06d344b..e8b17d6301 100644 --- a/main/streams/userspace.c +++ b/main/streams/userspace.c @@ -417,7 +417,7 @@ PHP_FUNCTION(stream_wrapper_register) zend_str_tolower(uwrap->classname, classname_len); rsrc_id = ZEND_REGISTER_RESOURCE(NULL, uwrap, le_protocols); - if (zend_hash_find(EG(class_table), uwrap->classname, classname_len + 1, (void**)&uwrap->ce) == SUCCESS) { + if (zend_lookup_class(uwrap->classname, classname_len, (zend_class_entry***)&uwrap->ce TSRMLS_CC) == SUCCESS) { uwrap->ce = *(zend_class_entry**)uwrap->ce; if (php_register_url_stream_wrapper(protocol, &uwrap->wrapper TSRMLS_CC) == SUCCESS) { RETURN_TRUE;