com php-src: op_array->filename and op_array->filen ame may be kept in opcache SHM: Zend/zend_bui ltin_functions.c

From: Date: Wed, 16 Apr 2014 18:39:23 +0000
Subject: com php-src: op_array->filename and op_array->filen ame may be kept in opcache SHM: Zend/zend_bui ltin_functions.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-77369@lists.php.net to get a copy of this message
Commit: 5bb493c40bb407203db2d4dd7b884310444a9d6c Author: Dmitry Stogov <dmitry@zend.com> Wed, 16 Apr 2014 22:39:23 +0400 Parents: 2d62a121289c248f3aa9adc1336f13e68ca8c1c6 Branches: phpng Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=5bb493c40bb407203db2d4dd7b884310444a9d6c Log: op_array->filename and op_array->filename may be kept in opcache SHM Changed paths: M Zend/zend_builtin_functions.c Diff: diff --git a/Zend/zend_builtin_functions.c b/Zend/zend_builtin_functions.c index aebcb74..d383910 100644 --- a/Zend/zend_builtin_functions.c +++ b/Zend/zend_builtin_functions.c @@ -1084,7 +1084,8 @@ ZEND_FUNCTION(get_class_methods) /* Do not display old-style inherited constructors */ if (zend_hash_get_current_key_ex(&ce->function_table, &key, &num_index, 0, &pos) != HASH_KEY_IS_STRING) { - ZVAL_STR(&method_name, STR_COPY(mptr->common.function_name)); +// TODO: we have to duplicate it, becaise it may be stored in opcache SHM ??? + ZVAL_STR(&method_name, STR_DUP(mptr->common.function_name, 0)); zend_hash_next_index_insert(Z_ARRVAL_P(return_value), &method_name); } else if ((mptr->common.fn_flags & ZEND_ACC_CTOR) == 0 || mptr->common.scope == ce || @@ -1097,7 +1098,8 @@ ZEND_FUNCTION(get_class_methods) ZVAL_STR(&method_name, STR_COPY(zend_find_alias_name(mptr->common.scope, key))); zend_hash_next_index_insert(Z_ARRVAL_P(return_value), &method_name); } else { - ZVAL_STR(&method_name, STR_COPY(mptr->common.function_name)); +// TODO: we have to duplicate it, becaise it may be stored in opcache SHM ??? + ZVAL_STR(&method_name, STR_DUP(mptr->common.function_name, 0)); zend_hash_next_index_insert(Z_ARRVAL_P(return_value), &method_name); } } @@ -2240,7 +2242,8 @@ ZEND_API void zend_fetch_debug_backtrace(zval *return_value, int skip_last, int break; } if (prev->op_array) { - add_assoc_str_ex(&stack_frame, "file", sizeof("file")-1, STR_COPY(prev->op_array->filename)); +// TODO: we have to duplicate it, becaise it may be stored in opcache SHM ??? + add_assoc_str_ex(&stack_frame, "file", sizeof("file")-1, STR_DUP(prev->op_array->filename, 0)); add_assoc_long_ex(&stack_frame, "line", sizeof("line")-1, prev->opline->lineno); break; } @@ -2431,7 +2434,8 @@ ZEND_FUNCTION(get_extension_funcs) array_init(return_value); array = 1; } - add_next_index_str(return_value, STR_COPY(zif->common.function_name)); +// TODO: we have to duplicate it, becaise it may be stored in opcache SHM ??? + add_next_index_str(return_value, STR_DUP(zif->common.function_name, 0)); } zend_hash_move_forward_ex(CG(function_table), &iterator); }

« previous php.cvs (#77369) next »