diff options
author | Dmitry Stogov <dmitry@php.net> | 2005-09-02 07:46:30 +0000 |
---|---|---|
committer | Dmitry Stogov <dmitry@php.net> | 2005-09-02 07:46:30 +0000 |
commit | 59d2e3f3aa51cc234a2bc54b7457dbeffbdb0386 (patch) | |
tree | c62ff4b18bd7162724e0fb02be6fe8de5e2a2abf /Zend/tests/bug34260.phpt | |
parent | acfde98e6e126d780fb586d8aa29aee3d562d840 (diff) | |
download | php-git-59d2e3f3aa51cc234a2bc54b7457dbeffbdb0386.tar.gz |
Fixed bug #34260 (Segfault with callbacks (array_map) + overloading)
Diffstat (limited to 'Zend/tests/bug34260.phpt')
-rwxr-xr-x | Zend/tests/bug34260.phpt | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/Zend/tests/bug34260.phpt b/Zend/tests/bug34260.phpt new file mode 100755 index 0000000000..fa393d065c --- /dev/null +++ b/Zend/tests/bug34260.phpt @@ -0,0 +1,36 @@ +--TEST-- +Bug #34260 (Segfault with callbacks (array_map) + overloading) +--FILE-- +<?php +class Faulty +{ + function __call($Method,$Args) + { + switch($Method) + { + case 'seg': + echo "I hate me\n"; + break; + } + } + + function NormalMethod($Args) + { + echo "I heart me\n"; + } +} + +$Faulty = new Faulty(); +$Array = array('Some junk','Some other junk'); + +// This causes a seg fault. +$Failure = array_map(array($Faulty,'seg'),$Array); + +// This does not. +$Failure = array_map(array($Faulty,'NormalMethod'),$Array); +?> +--EXPECT-- +I hate me +I hate me +I heart me +I heart me |