diff options
author | Dmitry Stogov <dmitry@zend.com> | 2017-10-26 16:03:42 +0300 |
---|---|---|
committer | Dmitry Stogov <dmitry@zend.com> | 2017-10-26 16:03:42 +0300 |
commit | 98eee90734c4fabf3f3a3d4168576cb6b25ad9b1 (patch) | |
tree | 96586e85d4a3f4184a8c5fd01d31cb1d94d8da08 /Zend/tests/bug75420.14.phpt | |
parent | 502cfddf28c4a01d7f2d23f35ff6244ae7428103 (diff) | |
download | php-git-98eee90734c4fabf3f3a3d4168576cb6b25ad9b1.tar.gz |
Fixed indirect modification of magic ArrayAccess method arguments
Diffstat (limited to 'Zend/tests/bug75420.14.phpt')
-rw-r--r-- | Zend/tests/bug75420.14.phpt | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/Zend/tests/bug75420.14.phpt b/Zend/tests/bug75420.14.phpt new file mode 100644 index 0000000000..07fb2cd984 --- /dev/null +++ b/Zend/tests/bug75420.14.phpt @@ -0,0 +1,20 @@ +--TEST-- +Bug #75420.14 (Indirect modification of magic method argument) +--FILE-- +<?php +class Test implements ArrayAccess { + public function offsetExists($x) { $GLOBALS["obj"] = 24; return true; } + public function offsetGet($x) { var_dump($x); return 42; } + public function offsetSet($x, $y) { } + public function offsetUnset($x) { } +} + +$obj = new Test; +$name = "foo"; +var_dump(empty($obj[$name])); +var_dump($obj); +?> +--EXPECT-- +string(3) "foo" +bool(false) +int(24) |