Two things:

- the bug does not effect scripts executed via 'php filename'; this only hits 
php -r with the contained code.
- the bug does stop shutdown handlers from being executed properly.

I've attached a file that should reproduce the error.  If run as 'php
test_cli_error.php', it should execute cleanly; if the contents of that
file are copied out of the script (minus php tags) you should get the
zend_mm_heap_corrupted exit without the output from the shutdown
function.

Because this only impacts code evaluated via the -r option, it may not
be worth investigating further.

Here is a sample shell session:

[EMAIL PROTECTED]:~$ php -r "class TestException extends Exception {} 
function a() { print('shutdown' . chr(10)); }
register_shutdown_function('a');
throw new TestException('hello world');
"

Fatal error: Uncaught exception 'TestException' with message 'hello world' in 
Command line code:4
Stack trace:
#0 {main}
  thrown in Command line code on line 4
zend_mm_heap corrupted
[EMAIL PROTECTED]:~$ php test_cli_error.php

Fatal error: Uncaught exception 'TestException' with message 'hello world' in 
/home/marmida/test_cli_error.php:6
Stack trace:
#0 {main}
  thrown in /home/marmida/test_cli_error.php on line 6
shutdown
[EMAIL PROTECTED]:~$  


** Attachment added: "sample driver for -r execution to get 
zend_mm_heap_corrupted"
   http://launchpadlibrarian.net/12908367/test_cli_error.php

-- 
php cli crashes on uncaught derived exception
https://bugs.launchpad.net/bugs/198246
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to