diff options
Diffstat (limited to 'Zend/zend_compile.c')
| -rw-r--r-- | Zend/zend_compile.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index bd678c6d8b..50aff60f1a 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -6864,12 +6864,16 @@ zend_bool zend_is_auto_global(zend_string *name TSRMLS_DC) /* {{{ */ int zend_register_auto_global(zend_string *name, zend_bool jit, zend_auto_global_callback auto_global_callback TSRMLS_DC) /* {{{ */ { zend_auto_global auto_global; + int retval; auto_global.name = zend_new_interned_string(name TSRMLS_CC); auto_global.auto_global_callback = auto_global_callback; auto_global.jit = jit; - return zend_hash_add_mem(CG(auto_globals), name, &auto_global, sizeof(zend_auto_global)) != NULL ? SUCCESS : FAILURE; + retval = zend_hash_add_mem(CG(auto_globals), name, &auto_global, sizeof(zend_auto_global)) != NULL ? SUCCESS : FAILURE; + + STR_RELEASE(auto_global.name); + return retval; } /* }}} */ |
