php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #39629 Buffer clean in error handler causes PHP crash
Submitted: 2006-11-25 19:32 UTC Modified: 2006-11-30 08:23 UTC
From: robert dot tuley at imperial dot ac dot uk Assigned:
Status: Closed Package: Output Control
PHP Version: 5.2.0 OS: winXP
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: robert dot tuley at imperial dot ac dot uk
New email:
PHP Version: OS:

 

 [2006-11-25 19:32 UTC] robert dot tuley at imperial dot ac dot uk
Description:
------------
Trying to clean the buffer in a custom error handler causes script exit when that buffer has 'ob_gzhandler' as a handler. The behaviour is consistent for both PHP5 and PHP4. Note that the example works correctly if there is no callback function specified in the call to ob_start(). 

Reproduce code:
---------------
// set error handler
function errorHandler($code,$string,$filename,$line,$scope) {
    ob_end_clean();
    die('should reach here');
}
set_error_handler('errorHandler');

// use ob_gzhandler to buffer page
ob_start('ob_gzhandler');
echo 'some output';
trigger_error('encounters error',E_USER_ERROR);

Expected result:
----------------
should reach here

Actual result:
--------------
No output.

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2006-11-27 10:08 UTC] tony2001@php.net
Please try using this CVS snapshot:

  http://snaps.php.net/php5.2-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php5.2-win32-latest.zip

Cannot reproduce.
I get no crash, but the expected result instead.
 [2006-11-30 08:23 UTC] robert dot tuley at imperial dot ac dot uk
Apologies, on closer inspection this seems not to be a problem with PHP, as it produces the expected results when run from the command line.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Mon Oct 14 08:01:27 2024 UTC