summaryrefslogtreecommitdiff
path: root/ext/opcache/Optimizer/compact_literals.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2018-09-20 12:33:46 +0300
committerDmitry Stogov <dmitry@zend.com>2018-09-20 12:33:46 +0300
commitb8ffa3707c07e6edbe5db5a3fdf5516ba1f6bef0 (patch)
tree50737b90e5c7656f38f0c44f7d1c834c1791b2e8 /ext/opcache/Optimizer/compact_literals.c
parentf5729ec53224fd13e680825b0a71675be96fed53 (diff)
downloadphp-git-b8ffa3707c07e6edbe5db5a3fdf5516ba1f6bef0.tar.gz
Fixed bug #76711 (OPcache enabled triggers false-positive "Illegal string offset")
Diffstat (limited to 'ext/opcache/Optimizer/compact_literals.c')
-rw-r--r--ext/opcache/Optimizer/compact_literals.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/ext/opcache/Optimizer/compact_literals.c b/ext/opcache/Optimizer/compact_literals.c
index e10b9feab0..065962be73 100644
--- a/ext/opcache/Optimizer/compact_literals.c
+++ b/ext/opcache/Optimizer/compact_literals.c
@@ -378,6 +378,7 @@ void zend_optimizer_compact_literals(zend_op_array *op_array, zend_optimizer_ctx
} else {
map[i] = j;
ZVAL_LONG(&zv, j);
+ Z_EXTRA(op_array->literals[i]) = 0; /* allow merging with FETCH_DIM_... */
zend_hash_index_add_new(&hash, Z_LVAL(op_array->literals[i]), &zv);
if (i != j) {
op_array->literals[j] = op_array->literals[i];