]> granicus.if.org Git - php/commitdiff
Fixed bug #71443 (Segfault using built-in webserver with intl using symfony)
authorXinchen Hui <laruence@gmail.com>
Tue, 26 Jan 2016 07:57:39 +0000 (15:57 +0800)
committerXinchen Hui <laruence@gmail.com>
Tue, 26 Jan 2016 07:57:39 +0000 (15:57 +0800)
NEWS
Zend/zend.c
ext/opcache/tests/bug65915.phpt

diff --git a/NEWS b/NEWS
index ec4df90e200d918112c355282beee468acb993dd..d8fd1732aaa4e97c20f723b05a2c4000185b1887 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,8 @@ PHP                                                                        NEWS
 ?? ??? 2016 PHP 7.0.4
 
 - Core:
+  . Fixed bug #71443 (Segfault using built-in webserver with intl using
+    symfony). (Laruence)
   . Fixed bug #71442 (forward_static_call crash). (Laruence)
   . Fixed bug #71441 (Typehinted Generator with return in try/finally crashes).
     (Bob)
index 23fb9f2aba043f1e26c33e7a5fdb9011cccafbfc..eeeb2c6784e96bd3ed8ff4539665869bbb221f0b 100644 (file)
@@ -966,6 +966,10 @@ ZEND_API void zend_deactivate(void) /* {{{ */
        /* shutdown_executor() takes care of its own bailout handling */
        shutdown_executor();
 
+       zend_try {
+               zend_ini_deactivate();
+       } zend_end_try();
+
        zend_try {
                shutdown_compiler();
        } zend_end_try();
@@ -984,10 +988,6 @@ ZEND_API void zend_deactivate(void) /* {{{ */
        fprintf(stderr, "      --------  --------  -----------  ------\n");
        fprintf(stderr, "ZVAL  %8d  %8d  %9d  %8d\n", GC_G(zval_possible_root), GC_G(zval_buffered), GC_G(zval_remove_from_buffer), GC_G(zval_marked_grey));
 #endif
-
-       zend_try {
-               zend_ini_deactivate();
-       } zend_end_try();
 }
 /* }}} */
 
index 6496ee325301d842f38042a3bb999a093aa6abc1..c616c4fb5f622793f1e60a678b5a0fb55d5ea6be 100644 (file)
@@ -3,6 +3,7 @@ Bug #65915 (Inconsistent results with require return value)
 --INI--
 opcache.enable=1
 opcache.enable_cli=1
+opcache.file_cache_only=0
 --SKIPIF--
 <?php require_once('skipif.inc'); ?>
 --FILE--
@@ -13,7 +14,7 @@ file_put_contents($tmp, '<?php return function(){ return "a";};');
 $f = require $tmp;
 var_dump($f());
 
-opcache_invalidate($tmp, true);
+var_dump(opcache_invalidate($tmp, true));
 
 file_put_contents($tmp, '<?php return function(){ return "b";};');
 $f = require $tmp;
@@ -23,4 +24,5 @@ var_dump($f());
 ?>
 --EXPECT--
 string(1) "a"
+bool(true)
 string(1) "b"