From 14933367086f7ba05000a72a3664965b7ae04eb3 Mon Sep 17 00:00:00 2001 From: Arnaud Le Blanc Date: Mon, 1 Jun 2009 16:10:47 +0000 Subject: [PATCH] MFH: New tests # These tests were failing on different configurations, so adding them # all to get more chances of seeing one failing in case of problem. --- Zend/tests/bug48228.phpt | 32 +++++++++++++++++++ Zend/tests/bug48408.phpt | 30 ++++++++++++++++++ Zend/tests/bug48409.phpt | 67 ++++++++++++++++++++++++++++++++++++++++ Zend/tests/bug48428.phpt | 13 ++++++++ 4 files changed, 142 insertions(+) create mode 100644 Zend/tests/bug48228.phpt create mode 100644 Zend/tests/bug48408.phpt create mode 100644 Zend/tests/bug48409.phpt create mode 100644 Zend/tests/bug48428.phpt diff --git a/Zend/tests/bug48228.phpt b/Zend/tests/bug48228.phpt new file mode 100644 index 0000000000..2add69c340 --- /dev/null +++ b/Zend/tests/bug48228.phpt @@ -0,0 +1,32 @@ +--TEST-- +Bug #48228 (crash when exception is thrown while passing function arguments) +--FILE-- +check(do_throw()); + } +} +$l_aa=new aa(); + +$l_aa->dosome(); +?> +--EXPECTF-- + +Fatal error: Uncaught exception 'Exception' in %s +Stack trace: +#0 %s(%d): do_throw() +#1 %s(%d): aa->dosome() +#2 {main} + thrown in %s diff --git a/Zend/tests/bug48408.phpt b/Zend/tests/bug48408.phpt new file mode 100644 index 0000000000..20a019807b --- /dev/null +++ b/Zend/tests/bug48408.phpt @@ -0,0 +1,30 @@ +--TEST-- +Bug #48408 (crash when exception is thrown while passing function arguments) +--FILE-- +process($c->generate(0)); +} +catch(Exception $e){ + $c->generate(0); +} +?> +--EXPECTF-- + +Fatal error: Uncaught exception 'Exception' in %s +Stack trace: +#0 %s(%d): C->generate(0) +#1 {main} + thrown in %s diff --git a/Zend/tests/bug48409.phpt b/Zend/tests/bug48409.phpt new file mode 100644 index 0000000000..238b52ed74 --- /dev/null +++ b/Zend/tests/bug48409.phpt @@ -0,0 +1,67 @@ +--TEST-- +Bug #48409 (crash when exception is thrown while passing function arguments) +--FILE-- + 'xyz'); + } +} + +class CCC +{ + public function process($p) + { + return $p; + } +} + +class AAA +{ + public function func() + { + $b = new BBB; + $c = new CCC; + $i = 34; + $item = array('foo' => 'bar'); + try { + $c->process($b->xyz($item['foo'], $i)); + } + catch(ABCException $e) { + $b->xyz($item['foo'], $i); + } + } // end func(); +} + +class Runner +{ + public function run($x) + { + try { + $x->func(); + } + catch(ABCException $e) { + throw new Exception; + } + } +} + +try { + $runner = new Runner; + $runner->run(new AAA); +} +catch(Exception $e) { + die('Exception thrown'); +} + +?> +--EXPECT-- +Exception thrown diff --git a/Zend/tests/bug48428.phpt b/Zend/tests/bug48428.phpt new file mode 100644 index 0000000000..ae9ac936a3 --- /dev/null +++ b/Zend/tests/bug48428.phpt @@ -0,0 +1,13 @@ +--TEST-- +Bug #48428 (crash when exception is thrown while passing function arguments) +--FILE-- + getMessage()); +} +?> +--EXPECT-- +ERROR -- 2.40.0