From 0977b2a6f8ee06ab5ebab9a380422305abe2803a Mon Sep 17 00:00:00 2001 From: Felipe Pena Date: Wed, 8 Jul 2009 18:21:13 +0000 Subject: - Fixed bug #48854 (array_merge_recursive modifies arrays after first one) --- ext/standard/array.c | 1 + 1 file changed, 1 insertion(+) (limited to 'ext/standard/array.c') diff --git a/ext/standard/array.c b/ext/standard/array.c index 57f15946ce..922bb6e830 100644 --- a/ext/standard/array.c +++ b/ext/standard/array.c @@ -2473,6 +2473,7 @@ static void php_array_merge_or_replace_wrapper(INTERNAL_FUNCTION_PARAMETERS, int array_init_size(return_value, init_size); for (i = 0; i < argc; i++) { + SEPARATE_ZVAL(args[i]); if (!replace) { php_array_merge(Z_ARRVAL_P(return_value), Z_ARRVAL_PP(args[i]), recursive TSRMLS_CC); } else if (recursive && i > 0) { /* First array will be copied directly instead */ -- cgit v1.2.1