Skip to content

Commit d7a10f0

Browse files
committed
Properly update string type flags
1 parent 83d8ebc commit d7a10f0

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

Zend/zend_variables.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -219,8 +219,10 @@ ZEND_API void ZEND_FASTCALL _zval_copy_ctor_func(zval *zvalue ZEND_FILE_LINE_DC)
219219
{
220220
if (EXPECTED(Z_TYPE_P(zvalue) == IS_ARRAY)) {
221221
ZVAL_ARR(zvalue, zend_array_dup(Z_ARRVAL_P(zvalue)));
222-
} else if (EXPECTED(Z_TYPE_P(zvalue) == IS_STRING) ||
223-
EXPECTED(Z_TYPE_P(zvalue) == IS_CONSTANT)) {
222+
} else if (EXPECTED(Z_TYPE_P(zvalue) == IS_STRING)) {
223+
CHECK_ZVAL_STRING_REL(Z_STR_P(zvalue));
224+
ZVAL_NEW_STR(zvalue, zend_string_dup(Z_STR_P(zvalue), 0));
225+
} else if (EXPECTED(Z_TYPE_P(zvalue) == IS_CONSTANT)) {
224226
CHECK_ZVAL_STRING_REL(Z_STR_P(zvalue));
225227
Z_STR_P(zvalue) = zend_string_dup(Z_STR_P(zvalue), 0);
226228
} else if (EXPECTED(Z_TYPE_P(zvalue) == IS_CONSTANT_AST)) {

0 commit comments

Comments
 (0)