]> granicus.if.org Git - php/commitdiff
- Added test for bug #49074
authorJani Taskinen <jani@php.net>
Sat, 1 Aug 2009 01:01:43 +0000 (01:01 +0000)
committerJani Taskinen <jani@php.net>
Sat, 1 Aug 2009 01:01:43 +0000 (01:01 +0000)
ext/reflection/tests/bug49074.phpt [new file with mode: 0644]

diff --git a/ext/reflection/tests/bug49074.phpt b/ext/reflection/tests/bug49074.phpt
new file mode 100644 (file)
index 0000000..6704275
--- /dev/null
@@ -0,0 +1,35 @@
+--TEST--
+Bug #49074 (private class static fields can be modified by using reflection)
+--FILE--
+<?php
+class Test {
+       private static $data1 = 1;
+       private static $data4 = 4;
+}
+
+class Test2 extends Test {
+       private static $data2 = 2;
+       public static $data3 = 3;
+}
+
+$r = new ReflectionClass('Test2');
+$m = $r->getStaticProperties();
+
+$m['data1'] = 100;
+$m['data2'] = 200;
+$m['data3'] = 300;
+$m['data4'] = 400;
+
+var_dump($r->getStaticProperties());
+?>
+--EXPECT--
+array(4) {
+  ["data2"]=>
+  int(2)
+  ["data3"]=>
+  int(3)
+  ["data1"]=>
+  int(1)
+  ["data4"]=>
+  int(4)
+}