diff options
Diffstat (limited to 'ext/spl/tests/bug67582.phpt')
-rw-r--r-- | ext/spl/tests/bug67582.phpt | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/ext/spl/tests/bug67582.phpt b/ext/spl/tests/bug67582.phpt new file mode 100644 index 0000000000..b22f615034 --- /dev/null +++ b/ext/spl/tests/bug67582.phpt @@ -0,0 +1,24 @@ +--TEST-- +Bug #67582: Cloned SplObjectStorage with overwritten getHash fails offsetExists() +--FILE-- +<?php + +class MyObjectStorage extends SplObjectStorage { + // Overwrite getHash() with just some (working) test-method + public function getHash($object) { return get_class($object); } +} + +class TestObject {} + +$list = new MyObjectStorage(); +$list->attach(new TestObject()); + +foreach($list as $x) var_dump($list->offsetExists($x)); + +$list2 = clone $list; +foreach($list2 as $x) var_dump($list2->offsetExists($x)); + +?> +--EXPECT-- +bool(true) +bool(true) |