Skip to content

Commit aedc7b0

Browse files
committed
Merge branch 'PHP-7.4'
* PHP-7.4: Fix infinite loop on string offset during by-ref list assign
2 parents 7484b8f + 605ee9c commit aedc7b0

File tree

2 files changed

+17
-0
lines changed

2 files changed

+17
-0
lines changed
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
--TEST--
2+
String offset error during list() by-ref assignment
3+
--FILE--
4+
<?php
5+
6+
$a = [0];
7+
$v = 'b';
8+
$i = 0;
9+
list(&$a[$i++]) = $v;
10+
11+
?>
12+
--EXPECTF--
13+
Fatal error: Uncaught Error: Cannot create references to/from string offsets in %s:%d
14+
Stack trace:
15+
#0 {main}
16+
thrown in %s on line %d

Zend/zend_execute.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1467,6 +1467,7 @@ static zend_never_inline ZEND_COLD void zend_wrong_string_offset(EXECUTE_DATA_D)
14671467
msg = "Cannot create references to/from string offsets";
14681468
break;
14691469
}
1470+
opline++;
14701471
}
14711472
break;
14721473
EMPTY_SWITCH_DEFAULT_CASE();

0 commit comments

Comments
 (0)