]> granicus.if.org Git - php/commitdiff
Fix segfault -- need to copy-construct constant value.
authorAndrei Zmievski <andrei@php.net>
Wed, 23 May 2001 13:54:22 +0000 (13:54 +0000)
committerAndrei Zmievski <andrei@php.net>
Wed, 23 May 2001 13:54:22 +0000 (13:54 +0000)
Zend/zend_builtin_functions.c

index 0a03a72f0a01e150207a193093d46eb6a70c5b10..d882447ec3ae4cf8ce039ffacc498ef6ec58c095 100644 (file)
@@ -1016,7 +1016,13 @@ static int add_extension_info(zend_module_entry *module, void *arg)
 static int add_constant_info(zend_constant *constant, void *arg)
 {
        zval *name_array = (zval *)arg;
-       add_assoc_zval(name_array, constant->name, &(constant->value));
+       zval *const_val;
+
+       MAKE_STD_ZVAL(const_val);
+       *const_val = constant->value;
+       zval_copy_ctor(const_val);
+       INIT_PZVAL(const_val);
+       add_assoc_zval_ex(name_array, constant->name, constant->name_len, const_val);
        return 0;
 }