]> granicus.if.org Git - php/commit
Fixed IS_INDIRECT handling when assign array element by reference.
authorDmitry Stogov <dmitry@zend.com>
Wed, 12 Mar 2014 20:30:53 +0000 (00:30 +0400)
committerDmitry Stogov <dmitry@zend.com>
Wed, 12 Mar 2014 20:30:53 +0000 (00:30 +0400)
commite0dd8a4f4bd293b6fc8b317ee26ee7e0f0910a74
tree0105988ddaba658e37a0bd81651d2e9871cd9ab3
parent72f738c368106d9e535f7e20a68ed7f26a6665cf
Fixed IS_INDIRECT handling when assign array element by reference.
This might cause passing invalid pointer if the array could be resized before IS_INDIRECT usage.
Now we use IS_REFERENCE instead of IS_INDIRECT.
The following test crashed before:
<?php $a = array(0,1,2,3,4,5,6,7); $a[8] = &$a[7]; ?>
Zend/zend_execute.c
Zend/zend_vm_def.h
Zend/zend_vm_execute.h