diff options
| author | Andi Gutmans <andi@php.net> | 2002-06-05 17:34:56 +0000 |
|---|---|---|
| committer | Andi Gutmans <andi@php.net> | 2002-06-05 17:34:56 +0000 |
| commit | 2d6404d5b0e998ef21d99cd24265a6cb209e6c87 (patch) | |
| tree | 8a1bce7e7eaa351ec30ee3e1613874f593af33d0 /Zend/zend_execute.c | |
| parent | 6c6ac37be47146952212026974532adc6c6a504a (diff) | |
| download | php-git-2d6404d5b0e998ef21d99cd24265a6cb209e6c87.tar.gz | |
- Allow overloaded objects to receive the method name in its original
- case.
Diffstat (limited to 'Zend/zend_execute.c')
| -rw-r--r-- | Zend/zend_execute.c | 26 |
1 files changed, 4 insertions, 22 deletions
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index 4fa0d3b302..4457ea6aaa 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -1892,30 +1892,15 @@ binary_assign_op_addr_obj: { zval *function_name; zval tmp; - zend_bool is_const; char *function_name_strval; int function_name_strlen; zend_ptr_stack_n_push(&EG(arg_types_stack), 2, EX(fbc), EX(object)); - is_const = (EX(opline)->op2.op_type == IS_CONST); - - if (is_const) { - function_name_strval = EX(opline)->op2.u.constant.value.str.val; - function_name_strlen = EX(opline)->op2.u.constant.value.str.len; - } else { - function_name = get_zval_ptr(&EX(opline)->op2, EX(Ts), &EG(free_op2), BP_VAR_R); - - tmp = *function_name; - zval_copy_ctor(&tmp); - convert_to_string(&tmp); - function_name = &tmp; - zend_str_tolower(tmp.value.str.val, tmp.value.str.len); + function_name = get_zval_ptr(&EX(opline)->op2, EX(Ts), &EG(free_op2), BP_VAR_R); + function_name_strval = function_name->value.str.val; + function_name_strlen = function_name->value.str.len; - function_name_strval = tmp.value.str.val; - function_name_strlen = tmp.value.str.len; - } - EX(calling_scope) = EG(scope); if (EX(opline)->extended_value == ZEND_FETCH_FROM_THIS) { @@ -1953,10 +1938,7 @@ binary_assign_op_addr_obj: EX(calling_scope) = NULL; } - if (!is_const) { - zval_dtor(&tmp); - FREE_OP(EX(Ts), &EX(opline)->op2, EG(free_op2)); - } + FREE_OP(EX(Ts), &EX(opline)->op2, EG(free_op2)); NEXT_OPCODE(); } |
