From: Xinchen Hui Date: Mon, 10 Jun 2013 13:31:25 +0000 (+0800) Subject: Merge branch 'PHP-5.4' into PHP-5.5 X-Git-Tag: php-5.5.0~29^2~16 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a9d005c04e73621f81d441ef7afaae0dca18a58c;p=php Merge branch 'PHP-5.4' into PHP-5.5 Conflicts: Zend/zend_compile.c --- a9d005c04e73621f81d441ef7afaae0dca18a58c diff --cc NEWS index b2cb8c2eca,567c81bd2c..757e9185f6 --- a/NEWS +++ b/NEWS @@@ -1,22 -1,13 +1,23 @@@ PHP NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| -?? ??? 2013, PHP 5.4.17 +?? ??? 2013, PHP 5.5.0 Release Candidate 4 - Core: + . Fixed bug #64988 (Class loading order affects E_STRICT warning). (Laruence) . Fixed bug #64966 (segfault in zend_do_fcall_common_helper_SPEC). (Laruence) - . Fixed bug #64960 (Segfault in gc_zval_possible_root). (Laruence) . Fixed bug #64934 (Apache2 TS crash with get_browser()). (Anatol) +- SPL: + . Fixed bug #64997 (Segfault while using RecursiveIteratorIterator on + 64-bits systems). (Laruence) + +06 Jun 2013, PHP 5.5.0 Release Candidate 3 + +- Core: + . Fixed bug #64960 (Segfault in gc_zval_possible_root). (Laruence) + . Fixed bug #64879 (Heap based buffer overflow in quoted_printable_encode, + CVE 2013-2110). (Stas) + - FPM: . Fixed Bug #64915 (error_log ignored when daemonize=0). (Remi) diff --cc Zend/zend_compile.c index 8674f92471,ab6020c623..a2aa909f15 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@@ -3464,12 -3267,12 +3464,12 @@@ static void do_inheritance_check_on_met if (child->common.prototype && (child->common.prototype->common.fn_flags & ZEND_ACC_ABSTRACT)) { if (!zend_do_perform_implementation_check(child, child->common.prototype TSRMLS_CC)) { - zend_error(E_COMPILE_ERROR, "Declaration of %s::%s() must be compatible with %s", ZEND_FN_SCOPE_NAME(child), child->common.function_name, zend_get_function_declaration(child->common.prototype? child->common.prototype : parent TSRMLS_CC)); - zend_error(E_COMPILE_ERROR, "Declaration of %s::%s() must be compatible with %s", ZEND_FN_SCOPE_NAME(child), child->common.function_name, zend_get_function_declaration(child->common.prototype TSRMLS_CC)); ++ zend_error(E_COMPILE_ERROR, "Declaration of %s::%s() must be compatible with %s", ZEND_FN_SCOPE_NAME(child), child->common.function_name, zend_get_function_declaration(child->common.prototype TSRMLS_CC)); } } else if (EG(error_reporting) & E_STRICT || EG(user_error_handler)) { /* Check E_STRICT (or custom error handler) before the check so that we save some time */ if (!zend_do_perform_implementation_check(child, parent TSRMLS_CC)) { - char *method_prototype = zend_get_function_declaration(child->common.prototype? child->common.prototype : parent TSRMLS_CC); + char *method_prototype = zend_get_function_declaration(parent TSRMLS_CC); - zend_error(E_STRICT, "Declaration of %s::%s() should be compatible with %s", ZEND_FN_SCOPE_NAME(child), child->common.function_name, method_prototype); + zend_error(E_STRICT, "Declaration of %s::%s() should be compatible with %s", ZEND_FN_SCOPE_NAME(child), child->common.function_name, method_prototype); efree(method_prototype); } }