summaryrefslogtreecommitdiff
path: root/ext/standard/array.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/array.c')
-rw-r--r--ext/standard/array.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/ext/standard/array.c b/ext/standard/array.c
index d942cfc184..0a8484f999 100644
--- a/ext/standard/array.c
+++ b/ext/standard/array.c
@@ -2479,8 +2479,7 @@ static void php_compact_var(HashTable *eg_active_symbol_table, zval *return_valu
} else if (zend_string_equals_literal(Z_STR_P(entry), "this")) {
zend_object *object = zend_get_this_object(EG(current_execute_data));
if (object) {
- GC_ADDREF(object);
- ZVAL_OBJ(&data, object);
+ ZVAL_OBJ_COPY(&data, object);
zend_hash_update(Z_ARRVAL_P(return_value), Z_STR_P(entry), &data);
}
} else {