From: Rui Hirokawa Date: Fri, 13 Jun 2008 14:48:33 +0000 (+0000) Subject: MFH X-Git-Tag: BEFORE_NEW_PARAMETER_PARSE~11 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b202ef74944f0e6ff5267aef0b0e47999e95e6df;p=php MFH --- diff --git a/ext/mbstring/mbstring.c b/ext/mbstring/mbstring.c index 4ded5962a5..7e223cafba 100644 --- a/ext/mbstring/mbstring.c +++ b/ext/mbstring/mbstring.c @@ -1025,9 +1025,14 @@ PHP_RSHUTDOWN_FUNCTION(mbstring) /* clear overloaded function. */ if (MBSTRG(func_overload)){ p = &(mb_ovld[0]); - while (p->type > 0 && zend_hash_find(EG(function_table), p->save_func, strlen(p->save_func)+1 , (void **)&orig) == SUCCESS) { - zend_hash_update(EG(function_table), p->orig_func, strlen(p->orig_func)+1, orig, sizeof(zend_function), NULL); - zend_hash_del(EG(function_table), p->save_func, strlen(p->save_func)+1); + while (p->type > 0) { + if ((MBSTRG(func_overload) & p->type) == p->type && + zend_hash_find(EG(function_table), p->save_func, + strlen(p->save_func)+1, (void **)&orig) == SUCCESS) { + + zend_hash_update(EG(function_table), p->orig_func, strlen(p->orig_func)+1, orig, sizeof(zend_function), NULL); + zend_hash_del(EG(function_table), p->save_func, strlen(p->save_func)+1); + } p++; } }