File tree 1 file changed +8
-1
lines changed
1 file changed +8
-1
lines changed Original file line number Diff line number Diff line change @@ -1809,13 +1809,20 @@ static zend_persistent_script *opcache_compile_file(zend_file_handle *file_handl
1809
1809
zend_try {
1810
1810
orig_compiler_options = CG (compiler_options );
1811
1811
CG (compiler_options ) |= ZEND_COMPILE_HANDLE_OP_ARRAY ;
1812
- CG (compiler_options ) |= ZEND_COMPILE_IGNORE_INTERNAL_CLASSES ;
1813
1812
CG (compiler_options ) |= ZEND_COMPILE_DELAYED_BINDING ;
1814
1813
CG (compiler_options ) |= ZEND_COMPILE_NO_CONSTANT_SUBSTITUTION ;
1815
1814
CG (compiler_options ) |= ZEND_COMPILE_IGNORE_OTHER_FILES ;
1816
1815
CG (compiler_options ) |= ZEND_COMPILE_IGNORE_OBSERVER ;
1816
+ #ifdef ZEND_WIN32
1817
+ /* On Windows, don't compile with internal classes. Shm may be attached from different
1818
+ * processes with internal classes living in different addresses. */
1819
+ CG (compiler_options ) |= ZEND_COMPILE_IGNORE_INTERNAL_CLASSES ;
1820
+ #endif
1817
1821
if (ZCG (accel_directives ).file_cache ) {
1818
1822
CG (compiler_options ) |= ZEND_COMPILE_WITH_FILE_CACHE ;
1823
+ /* Don't compile with internal classes for file cache, in case some extension is removed
1824
+ * later on. We cannot assume it is there in the future. */
1825
+ CG (compiler_options ) |= ZEND_COMPILE_IGNORE_INTERNAL_CLASSES ;
1819
1826
}
1820
1827
op_array = * op_array_p = accelerator_orig_compile_file (file_handle , type );
1821
1828
CG (compiler_options ) = orig_compiler_options ;
You can’t perform that action at this time.
0 commit comments