It would be nice if we could drop this manual function name reuse
code altogether and rely on interning for it.
if (op_array->function_name) {
zend_string *old_name = op_array->function_name;
- zend_string *new_name = zend_shared_alloc_get_xlat_entry(old_name);
-
- if (new_name) {
- op_array->function_name = new_name;
- } else {
+ if (!zend_shared_alloc_get_xlat_entry(old_name)) {
ADD_INTERNED_STRING(op_array->function_name);
- zend_shared_alloc_register_xlat_entry(old_name, op_array->function_name);
+ if (!zend_shared_alloc_get_xlat_entry(op_array->function_name)) {
+ zend_shared_alloc_register_xlat_entry(old_name, op_array->function_name);
+ }
}
}