LoggerReflectionUtils::setProperties() does not reset $properties array 
pointer, causing appenders to not be configured
-----------------------------------------------------------------------------------------------------------------------

                 Key: LOG4PHP-106
                 URL: https://issues.apache.org/jira/browse/LOG4PHP-106
             Project: Log4php
          Issue Type: Bug
          Components: Code
    Affects Versions: 2.0
            Reporter: Nick Mitchell


Given the following log4php ini file:
---
log4php.appender.SERVICELOG=LoggerAppenderFile
log4php.appender.SERVICELOG.file=/var/gcmanage/log/service.log
log4php.appender.SERVICELOG.append=true
log4php.appender.SERVICELOG.layout=LoggerLayoutPattern
log4php.appender.SERVICELOG.layout.ConversionPattern="%d{ISO8601} [%c{1}] %-5p 
- %m%n"

log4php.appender.SYSTEMLOG=LoggerAppenderFile
log4php.appender.SYSTEMLOG.file=/var/gcmanage/log/system.log
log4php.appender.SYSTEMLOG.append=true
log4php.appender.SYSTEMLOG.layout=LoggerLayoutPattern
log4php.appender.SYSTEMLOG.layout.ConversionPattern="%d{ISO8601} [%c{1}] %-5p - 
%m%n"

log4php.rootLogger=INFO, SYSTEMLOG

log4php.logger.service=INHERIT, SERVICELOG
log4php.additivity.service=false
---

The SERVICELOG appender will appear unconfigured after Logger::configure(). 
This is due to the array pointer on $properties not being reset() on subsequent 
calls to LoggerReflectionUtils::setProperties(). I was able to fix the problem 
by adding a reset($properties) on line 72 of LoggerReflectionUtils.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to