]> granicus.if.org Git - php/commitdiff
Fixed support for references
authorDmitry Stogov <dmitry@zend.com>
Tue, 18 Mar 2014 09:20:11 +0000 (13:20 +0400)
committerDmitry Stogov <dmitry@zend.com>
Tue, 18 Mar 2014 09:20:11 +0000 (13:20 +0400)
ext/standard/array.c

index de3e4b5573ef46c6bdfe690e659b6235cad9dd9c..cb3aa761bc0c1735f916898862acda78e04064cc 100644 (file)
@@ -1438,6 +1438,9 @@ static void php_compact_var(HashTable *eg_active_symbol_table, zval *return_valu
 {
        zval *value_ptr, data;
 
+       if (Z_ISREF_P(entry)) {
+               entry = Z_REFVAL_P(entry);
+       }
        if (Z_TYPE_P(entry) == IS_STRING) {
                if ((value_ptr = zend_hash_find(eg_active_symbol_table, Z_STR_P(entry))) != NULL) {
                        ZVAL_DUP(&data, value_ptr);