com php-src: Merge branch 'PHP-7.0' into PHP-7.1: NEWS Zend/zend_execute_API.c
| From: | Dmitry Stogov | Date: | Tue, 18 Oct 2016 12:09:44 +0000 |
| Subject: | com php-src: Merge branch 'PHP-7.0' into PHP-7.1: NEWS Zend/zend_execute_API.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-95196@lists.php.net to get a copy of this message | ||
Commit: c31d66b3fdab3c7ab8e71ef7e02f90421851a495
Author: Dmitry Stogov <dmitry@zend.com> Tue, 18 Oct 2016 15:09:44 +0300
Parents: 689cf8b2666e0bc9dff5c9216fedbf491890d3da 7bd4e7208e26e3e441717c0f33a154a385764d06
Branches: PHP-7.1
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=c31d66b3fdab3c7ab8e71ef7e02f90421851a495
Log:
Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
Fixed bug #73337 (try/catch not working with two exceptions inside a same operation)
Revert "Fix bug #47890 #73215 uniqid() should use better random source"
Update NEWS
Bugs:
https://bugs.php.net/73337
https://bugs.php.net/47890
https://bugs.php.net/73215
Changed paths:
MM NEWS
MM Zend/zend_execute_API.c
Diff:
diff --cc NEWS
index f16fc91,be20d3b..f20c8ad
--- a/NEWS
+++ b/NEWS
@@@ -1,45 -1,18 +1,48 @@@
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-?? ??? 2016 PHP 7.0.13
+?? ??? ????, PHP 7.1.0RC5
- Core:
- . Fixed bug #73181 (parse_str() without a second argument leads to crash).
- (Nikita)
- . Fixed bug #66773 (Autoload with Opcache allows importing conflicting class
- name to namespace). (Nikita)
- . Fixed bug #66862 ((Sub-)Namespaces unexpected behaviour). (Nikita)
+ . Fixed bug #73215 (uniqid() should use better random source). (Yasuo)
+
+- SQLite3:
+ . Fixed bug #73333 (2147483647 is fetched as string). (cmb)
+
+19 Oct 2016, PHP 7.1.0RC4
+
+- Core:
+ . Fixed bug #73288 (Segfault in __clone > Exception.toString > __get).
+ (Laruence)
+ . Fixed for #73240 (Write out of bounds at number_format). (Stas)
. Fix pthreads detection when cross-compiling (ffontaine)
+ . Fixed bug #73215 (uniqid() should use better random source). (Yasuo)
+ . Fixed bug #73337 (try/catch not working with two exceptions inside a same
+ operation). (Dmitry)
+- BCmath:
+ . Fix bug #73190 (memcpy negative parameter _bc_new_num_ex). (Stas)
+
+- Date:
+ . Fixed bug #45554 (Inconsistent behavior of the u format char). (Derick)
+ . Fixed bug #48225 (DateTime parser doesn't set microseconds for "now").
+ (Derick)
+ . Fixed bug #52514 (microseconds are missing in DateTime class). (Derick)
+ . Fixed bug #52519 (microseconds in DateInterval are missing). (Derick)
+ . Fixed bug #60089 (DateTime::createFromFormat() U after u nukes microtime).
+ (Derick)
+ . Fixed bug #64887 (Allow DateTime modification with subsecond items).
+ (Derick)
+ . Fixed bug #68506 (General DateTime improvments needed for microseconds to
+ become useful). (Derick)
+ . Fixed bug #73109 (timelib_meridian doesn't parse dots correctly). (Derick)
+ . Fixed bug #73247 (DateTime constructor does not initialise microseconds
+ property). (Derick)
+ . Fixed bug #73147 (Use After Free in PHP7 unserialize()). (Stas)
+ . Fixed bug #73189 (Memcpy negative size parameter php_resolve_path). (Stas)
+
+- DOM:
+ . Fixed bug #73150 (missing NULL check in dom_document_save_html). (Stas)
+
- GD:
. Fixed bug #73213 (Integer overflow in imageline() with antialiasing). (cmb)
. Fixed bug #73272 (imagescale() is not affected by, but affects
diff --cc Zend/zend_execute_API.c
index 2e299e8,f96cac5..fc4a39a
--- a/Zend/zend_execute_API.c
+++ b/Zend/zend_execute_API.c
@@@ -820,10 -844,22 +820,13 @@@ int zend_call_function(zend_fcall_info
ZEND_ADD_CALL_FLAG(call, ZEND_CALL_CLOSURE);
}
- /* PHP-7 doesn't support symbol_table substitution for functions */
- ZEND_ASSERT(fci->symbol_table == NULL);
-
-- if (func->type == ZEND_USER_FUNCTION) {
++ if (func->type == ZEND_USER_FUNCTION) {
int call_via_handler = (func->common.fn_flags & ZEND_ACC_CALL_VIA_TRAMPOLINE) != 0;
- EG(scope) = func->common.scope;
- call->symbol_table = fci->symbol_table;
- if (EXPECTED((func->op_array.fn_flags & ZEND_ACC_GENERATOR) == 0)) {
- const zend_op *current_opline_before_exception = EG(opline_before_exception);
-
- zend_init_execute_data(call, &func->op_array, fci->retval);
- zend_execute_ex(call);
- EG(opline_before_exception) = current_opline_before_exception;
- } else {
- zend_generator_create_zval(call, &func->op_array, fci->retval);
- }
++ const zend_op *current_opline_before_exception = EG(opline_before_exception);
++
+ zend_init_execute_data(call, &func->op_array, fci->retval);
+ zend_execute_ex(call);
++ EG(opline_before_exception) = current_opline_before_exception;
if (call_via_handler) {
/* We must re-initialize function again */
fci_cache->initialized = 0;