Skip to content

Commit 2d14ec9

Browse files
committed
Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0: Safely reassign array in usort()
2 parents f65144f + 6f38acf commit 2d14ec9

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

ext/standard/array.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -939,8 +939,10 @@ static void php_usort(INTERNAL_FUNCTION_PARAMETERS, bucket_compare_func_t compar
939939

940940
zend_hash_sort(arr, compare_func, renumber);
941941

942-
zval_ptr_dtor(array);
942+
zval garbage;
943+
ZVAL_COPY_VALUE(&garbage, array);
943944
ZVAL_ARR(array, arr);
945+
zval_ptr_dtor(&garbage);
944946

945947
PHP_ARRAY_CMP_FUNC_RESTORE();
946948
RETURN_TRUE;

0 commit comments

Comments
 (0)