Author: grobmeier
Date: Tue Jul 28 05:32:22 2009
New Revision: 798406

URL: http://svn.apache.org/viewvc?rev=798406&view=rev
Log:
LOG4PHP-62: Does not print warning if ini file is corrupt. Patch applied from 
Christian Hammers (slightly modified)

Modified:
    incubator/log4php/trunk/src/changes/changes.xml
    incubator/log4php/trunk/src/main/php/configurators/LoggerConfiguratorIni.php
    
incubator/log4php/trunk/src/test/php/configurators/LoggerConfiguratorIniTest.php

Modified: incubator/log4php/trunk/src/changes/changes.xml
URL: 
http://svn.apache.org/viewvc/incubator/log4php/trunk/src/changes/changes.xml?rev=798406&r1=798405&r2=798406&view=diff
==============================================================================
--- incubator/log4php/trunk/src/changes/changes.xml (original)
+++ incubator/log4php/trunk/src/changes/changes.xml Tue Jul 28 05:32:22 2009
@@ -61,6 +61,7 @@
                <action type="update" issue="LOG4PHP-53">Removed references 
were appropriate (Christian Grobmeier)</action>
                <action type="fix" issue="LOG4PHP-54">PHPDoc is wrong due to 
class movements - clean up (Christian Grobmeier)</action>
                <action type="update" issue="LOG4PHP-60">Improved 
quickstart.apt (Christian Hammers)</action>
+               <action type="update" issue="LOG4PHP-62">Does not print warning 
if ini file is corrupt (Christian Hammers)</action>
                <action type="update">Initial port to PHP 5 (Knut 
Urdalen)</action>
                <action type="update">Established new unit test suite (Knut 
Urdalen)</action>
                <action type="update">Added a range of examples (Knut 
Urdalen)</action>

Modified: 
incubator/log4php/trunk/src/main/php/configurators/LoggerConfiguratorIni.php
URL: 
http://svn.apache.org/viewvc/incubator/log4php/trunk/src/main/php/configurators/LoggerConfiguratorIni.php?rev=798406&r1=798405&r2=798406&view=diff
==============================================================================
--- 
incubator/log4php/trunk/src/main/php/configurators/LoggerConfiguratorIni.php 
(original)
+++ 
incubator/log4php/trunk/src/main/php/configurators/LoggerConfiguratorIni.php 
Tue Jul 28 05:32:22 2009
@@ -302,9 +302,9 @@
         */
        private function doConfigure($url, LoggerHierarchy $repository) {
                $properties = @parse_ini_file($url);
-               if($properties === false || count($properties) == 0) {
-                       // as of PHP 5.2.7 parse_ini_file() returns FALSE 
instead of an empty array
-                       return false;
+               if ($properties === false || count($properties) == 0) {
+                       $error = error_get_last();
+                   throw new LoggerException("LoggerConfiguratorIni: 
".$error['message']);
                }
                return $this->doConfigureProperties($properties, $repository);
        }

Modified: 
incubator/log4php/trunk/src/test/php/configurators/LoggerConfiguratorIniTest.php
URL: 
http://svn.apache.org/viewvc/incubator/log4php/trunk/src/test/php/configurators/LoggerConfiguratorIniTest.php?rev=798406&r1=798405&r2=798406&view=diff
==============================================================================
--- 
incubator/log4php/trunk/src/test/php/configurators/LoggerConfiguratorIniTest.php
 (original)
+++ 
incubator/log4php/trunk/src/test/php/configurators/LoggerConfiguratorIniTest.php
 Tue Jul 28 05:32:22 2009
@@ -65,10 +65,24 @@
        }
        
        public function testConfigureWithoutIniFile() {
-               self::assertFalse(LoggerConfiguratorIni::configure());
+           $catchedException = null;
+           try {
+              LoggerConfiguratorIni::configure();
+              self::assertTrue(false);
+           } catch (LoggerException $e) {
+               $catchedException = $e;
+           }
+               self::assertNotNull($catchedException);
        }
        
        public function testConfigureWithEmptyIniFile() {
-               
self::assertFalse(LoggerConfiguratorIni::configure('configurators/test2.properties'));
+               $catchedException = null;
+           try {
+              
LoggerConfiguratorIni::configure('configurators/test2.properties');
+              self::assertTrue(false);
+           } catch (LoggerException $e) {
+               $catchedException = $e;
+           }
+               self::assertNotNull($catchedException);
        }
 }


Reply via email to