diff --git a/ext/opcache/zend_file_cache.c b/ext/opcache/zend_file_cache.c index 51888d8c2b35a..f12170e8c9936 100644 --- a/ext/opcache/zend_file_cache.c +++ b/ext/opcache/zend_file_cache.c @@ -343,11 +343,6 @@ static void zend_file_cache_serialize_hash(HashTable *ht, } } -static void zend_file_cache_serialize_func(zval *zv, - zend_persistent_script *script, - zend_file_cache_metainfo *info, - void *buf); - static void zend_file_cache_serialize_ast(zend_ast *ast, zend_persistent_script *script, zend_file_cache_metainfo *info, @@ -369,7 +364,8 @@ static void zend_file_cache_serialize_ast(zend_ast *ast, } } } else if (ast->kind == ZEND_AST_OP_ARRAY) { - zend_file_cache_serialize_func(&((zend_ast_zval*)ast)->val, script, info, buf); + /* The op_array itself will be serialized as part of the dynamic_func_defs. */ + SERIALIZE_PTR(Z_PTR(((zend_ast_zval*)ast)->val)); } else { uint32_t children = zend_ast_get_num_children(ast); for (i = 0; i < children; i++) { @@ -475,7 +471,7 @@ static void zend_file_cache_serialize_op_array(zend_op_array *op_arra /* Check whether this op_array has already been serialized. */ if (IS_SERIALIZED(op_array->opcodes)) { - // ZEND_ASSERT(op_array->scope && "Only method op_arrays should be shared"); + ZEND_ASSERT(op_array->scope && "Only method op_arrays should be shared"); return; } @@ -1233,10 +1229,6 @@ static void zend_file_cache_unserialize_hash(HashTable *ht, } } -static void zend_file_cache_unserialize_func(zval *zv, - zend_persistent_script *script, - void *buf); - static void zend_file_cache_unserialize_ast(zend_ast *ast, zend_persistent_script *script, void *buf) @@ -1254,7 +1246,8 @@ static void zend_file_cache_unserialize_ast(zend_ast *ast, } } } else if (ast->kind == ZEND_AST_OP_ARRAY) { - zend_file_cache_unserialize_func(&((zend_ast_zval*)ast)->val, script, buf); + /* The op_array itself will be unserialized as part of the dynamic_func_defs. */ + UNSERIALIZE_PTR(Z_PTR(((zend_ast_zval*)ast)->val)); } else { uint32_t children = zend_ast_get_num_children(ast); for (i = 0; i < children; i++) { @@ -1368,7 +1361,7 @@ static void zend_file_cache_unserialize_op_array(zend_op_array *op_arr /* Check whether this op_array has already been unserialized. */ if (IS_UNSERIALIZED(op_array->opcodes)) { - //ZEND_ASSERT(op_array->scope && "Only method op_arrays should be shared"); + ZEND_ASSERT(op_array->scope && "Only method op_arrays should be shared"); return; }