summaryrefslogtreecommitdiff
path: root/ext/standard/string.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/string.c')
-rw-r--r--ext/standard/string.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/ext/standard/string.c b/ext/standard/string.c
index c889792d04..92256881bc 100644
--- a/ext/standard/string.c
+++ b/ext/standard/string.c
@@ -5418,9 +5418,7 @@ static void php_str_replace_in_subject(zval *search, zval *replace, zval **subje
/* If search is an array */
if (Z_TYPE_P(search) == IS_ARRAY) {
/* Duplicate subject string for repeated replacement */
- *result = **subject;
- zval_copy_ctor(result);
- INIT_PZVAL(result);
+ MAKE_COPY_ZVAL(subject, result);
zend_hash_internal_pointer_reset(Z_ARRVAL_P(search));
@@ -5527,9 +5525,7 @@ static void php_str_replace_in_subject(zval *search, zval *replace, zval **subje
&Z_USTRLEN_P(result), replace_count TSRMLS_CC);
}
} else {
- *result = **subject;
- zval_copy_ctor(result);
- INIT_PZVAL(result);
+ MAKE_COPY_ZVAL(subject, result);
}
}
}