mirror of
https://github.com/php/php-src.git
synced 2026-03-27 01:32:22 +01:00
`start_type + end_type < 2*IS_STRING` is not right, in this test case the types are start_type==5 (IS_DOUBLE), end_type==7 (IS_ARRAY). The IS_ARRAY type is a sentinel to disambiguate single-byte strings. The path must be taken when one of the types is not a string nor a single-byte string. Therefore, use < IS_STRING with an OR condition. Closes GH-13105.
30 lines
402 B
PHP
30 lines
402 B
PHP
--TEST--
|
|
GH-13094 (range(9.9, '0') causes segmentation fault)
|
|
--FILE--
|
|
<?php
|
|
var_dump(range(9.9, '0'));
|
|
?>
|
|
--EXPECT--
|
|
array(10) {
|
|
[0]=>
|
|
float(9.9)
|
|
[1]=>
|
|
float(8.9)
|
|
[2]=>
|
|
float(7.9)
|
|
[3]=>
|
|
float(6.9)
|
|
[4]=>
|
|
float(5.9)
|
|
[5]=>
|
|
float(4.9)
|
|
[6]=>
|
|
float(3.9000000000000004)
|
|
[7]=>
|
|
float(2.9000000000000004)
|
|
[8]=>
|
|
float(1.9000000000000004)
|
|
[9]=>
|
|
float(0.9000000000000004)
|
|
}
|