(jhdxr)
. Fixed bug #74761 (Unary operator expected error on some systems). (petk)
+- Opcache:
+ . Fixed bug #74623 (Infinite loop in type inference when using HTMLPurifier).
+ (nikic)
+
- SPL:
. Fixed bug #73471 (PHP freezes with AppendIterator). (jhdxr)
opline->opcode == ZEND_FETCH_OBJ_RW ||
opline->opcode == ZEND_FETCH_OBJ_FUNC_ARG) {
if (opline->opcode != ZEND_FETCH_DIM_FUNC_ARG) {
- if (t1 & (MAY_BE_UNDEF|MAY_BE_NULL|MAY_BE_NULL)) {
+ if (t1 & (MAY_BE_UNDEF|MAY_BE_NULL|MAY_BE_FALSE)) {
tmp &= ~(MAY_BE_UNDEF|MAY_BE_NULL|MAY_BE_FALSE);
tmp |= MAY_BE_OBJECT | MAY_BE_RC1 | MAY_BE_RCN;
}
--- /dev/null
+--TEST--
+Bug #74623: Infinite loop in type inference when using HTMLPurifier
+--FILE--
+<?php
+
+function crash($arr) {
+ $current_item = false;
+
+ foreach($arr as $item) {
+ if($item->name === 'string') {
+ $current_item = $item;
+ } else {
+ $current_item->a[] = '';
+ }
+ }
+
+}
+
+?>
+===DONE===
+--EXPECT--
+===DONE===