summaryrefslogtreecommitdiff
path: root/Zend/zend_builtin_functions.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2010-04-20 11:05:54 +0000
committerDmitry Stogov <dmitry@php.net>2010-04-20 11:05:54 +0000
commitdd5c478be61a0ef94b54837cfa875c964356e14f (patch)
treeafdce3c072b3c27f7721c6f24895a147a9f825b4 /Zend/zend_builtin_functions.c
parent94dd83722b57c4613ccf8371a3c4f50ffc274584 (diff)
downloadphp-git-dd5c478be61a0ef94b54837cfa875c964356e14f.tar.gz
Added concept of interned strings. All strings constants known at compile time are allocated in a single copy and never changed.
Diffstat (limited to 'Zend/zend_builtin_functions.c')
-rw-r--r--Zend/zend_builtin_functions.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/Zend/zend_builtin_functions.c b/Zend/zend_builtin_functions.c
index ce4a1be893..7506401df2 100644
--- a/Zend/zend_builtin_functions.c
+++ b/Zend/zend_builtin_functions.c
@@ -681,7 +681,7 @@ repeat:
zval_ptr_dtor(&val_free);
}
c.flags = case_sensitive; /* non persistent */
- c.name = zend_strndup(name, name_len);
+ c.name = IS_INTERNED(name) ? name : zend_strndup(name, name_len);
c.name_len = name_len+1;
c.module_number = PHP_USER_CONSTANT;
if (zend_register_constant(&c TSRMLS_CC) == SUCCESS) {