From: tokul Date: Wed, 3 Aug 2005 12:19:53 +0000 (+0000) Subject: more php 4.1.2 testing. it is possible that ini_get call is not needed. X-Git-Url: https://vcs.fsf.org/?a=commitdiff_plain;h=6b00bba4595fd43e9404647154474638c3d9ad98;p=squirrelmail.git more php 4.1.2 testing. it is possible that ini_get call is not needed. git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@9892 7612ce4b-ef26-0410-bec9-ea0150e637f0 --- diff --git a/class/error.class.php b/class/error.class.php index 18a2de0d..49baa571 100644 --- a/class/error.class.php +++ b/class/error.class.php @@ -68,13 +68,23 @@ class ErrorHandler { $iType = NULL; $aErrorCategory = array(); + /** + * Get current error reporting level. + * + * PHP 4.1.2 does not return current error reporting level in ini_get (php 5.1b3 and + * 4.3.10 does). Retrieve current error reporting level while setting error reporting + * to ini value and reset it to retrieved value. + */ + $iCurErrLevel = error_reporting(ini_get('error_reporting')); + error_reporting($iCurErrLevel); + /** * Check error_reporting value before logging error. * Don't log errors that are disabled by @ (error_reporting = 0). Some SquirrelMail scripts * (sq_mb_list_encodings(), ldap function calls in functions/abook_ldap_server.php) * handle errors themselves and @ is used to disable generic php error messages. */ - if ((bool) ini_get('error_reporting')) { + if ((bool) $iCurErrLevel) { /* * The following errors cannot be handled by a user defined error handler: * E_ERROR, E_PARSE, E_CORE_ERROR, E_CORE_WARNING, E_COMPILE_ERROR, E_COMPILE_WARNING