From 197711bb7d76f3cb3f5e850c3b1022ba1c84d370 Mon Sep 17 00:00:00 2001 From: foobar Date: Tue, 18 Jan 2005 11:36:44 +0000 Subject: [PATCH] Add test for bug #31402 --- ext/standard/tests/serialize/bug31402.phpt | 72 ++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 ext/standard/tests/serialize/bug31402.phpt diff --git a/ext/standard/tests/serialize/bug31402.phpt b/ext/standard/tests/serialize/bug31402.phpt new file mode 100644 index 0000000000..4f8bf0ca5b --- /dev/null +++ b/ext/standard/tests/serialize/bug31402.phpt @@ -0,0 +1,72 @@ +--TEST-- +Bug #31402 (unserialize() generates references when it should not) +--FILE-- +i = $i; + } +} + +class Y { + var $A = array(); + var $B; + + function Y() { + $this->A[1] = new X(1); + $this->A[2] = new X(2); + $this->B = $this->A[1]; + } +} + +$before = new Y(); +$ser = serialize($before); +$after = unserialize($ser); + +var_dump($before, $after); + +?> +--EXPECT-- +object(y)(2) { + ["A"]=> + array(2) { + [1]=> + object(x)(1) { + ["i"]=> + int(1) + } + [2]=> + object(x)(1) { + ["i"]=> + int(2) + } + } + ["B"]=> + object(x)(1) { + ["i"]=> + int(1) + } +} +object(y)(2) { + ["A"]=> + array(2) { + [1]=> + &object(x)(1) { + ["i"]=> + int(1) + } + [2]=> + object(x)(1) { + ["i"]=> + int(2) + } + } + ["B"]=> + &object(x)(1) { + ["i"]=> + int(1) + } +} -- 2.50.1