The easiest path will be for you to let an IDE (like Eclipse, my favorite)
generate a patch for you from the Team->Create Patch... dialog.

Depending on your Eclipse set up you might have to install EGit to get git
support in Eclipse.

Gary


On Tue, Sep 2, 2014 at 10:53 AM, Yogesh Rao <yog...@gmail.com> wrote:

> Hi Gary,
>
> I haven't worked on Git as yet, I think i will provide a diff of the files
> (with Git Master branch) and attach it to JIRA .
>
> Alternatively if there any link for creating and submitting Git patches,
> please do let me know I can provide that as well.
>
> Regards,
> -Yogesh
>
>
> On Tue, Sep 2, 2014 at 8:05 PM, Gary Gregory <garydgreg...@gmail.com>
> wrote:
>
> > Yogesh,
> >
> > Thank you for you message.
> >
> > We can only take code submissions via unified diff files attached to
> JIRA.
> > I think we might also be able to (legally) accept Git pull requests but I
> > am not 100% sure on that one.
> >
> > When providing a patch it would be most helpful to do so against the Git
> > master branch.
> >
> > In any case, please create JIRA issue.
> >
> > Thank you,
> > Gary
> >
> >
> > On Tue, Sep 2, 2014 at 10:24 AM, Yogesh Rao <yog...@gmail.com> wrote:
> >
> > > Hi,
> > >
> > > There seems to be an issue with SimpleLogger implementation provided by
> > > log4j2. The issue seems to be in the new improved API supporting
> > > placeholders and var args when called with an Object Array of size 0.
> > >
> > > for e.g logger.error("Hello World {} in {} " , new Object[0]);
> > >
> > > A statement above results in an error as shown below
> > >
> > > ERROR StatusLogger Unable to locate a logging implementation, using
> > > SimpleLogger
> > > Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1
> > >        at
> > >
> > >
> >
> org.apache.logging.log4j.simple.SimpleLogger.logMessage(SimpleLogger.java:157)
> > >        at
> > >
> > >
> >
> org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:1347)
> > >        at
> > >
> > >
> >
> org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1312)
> > >        at
> > >
> >
> org.apache.logging.log4j.spi.AbstractLogger.error(AbstractLogger.java:539)
> > >        at TestError.main(TestError.java:21)
> > >
> > >
> > >
> > > I managed to look at the code as well and it looks like a condition to
> > > check of the var arg param array size is missing in SimpleLogger
> > >
> > >  155 final Object[] params = msg.getParameters();
> > >  156         Throwable t;
> > >  157         if (throwable == null && params != null &&
> > > params[params.length - 1] instanceof Throwable) {
> > >  158             t = (Throwable) params[params.length - 1];
> > >  159         } else {
> > >  160             t = throwable;
> > >  161         }
> > >  162         if (t != null) {
> > >  163             sb.append(SPACE);
> > >  164             final ByteArrayOutputStream baos = new
> > > ByteArrayOutputStream();
> > >  165             t.printStackTrace(new PrintStream(baos));
> > >  166             sb.append(baos.toString());
> > >  167         }
> > >  168         stream.println(sb.toString());
> > >
> > >
> > > I can raise a JIRA issue and provide a fix with failing unit testcase.
> > Let
> > > me know if i can proceed ahead on this.
> > >
> > > Details of the environment are :-
> > > Version used
> > >
> > >  1. JDK - Oracle JDK version 1.7
> > >  2. Log4j2 API - 2.0.1
> > >
> > >
> > > To reproduce following java class can be used :
> > >
> > > TestError.java
> > > ------------------------
> > >
> > > import org.apache.logging.log4j.LogManager;
> > > import org.apache.logging.log4j.Logger;
> > >
> > >
> > >
> > > public class TestError {
> > >
> > > private static final Logger logger = LogManager.getLogger("TestError");
> > > /**
> > >  * @param args
> > >  */
> > > public static void main(String[] args) {
> > > Object[] arr = null;
> > > logger.error("Hello World {} in {} " , new Object[0]);
> > >
> > > }
> > >
> > > }
> > >
> > > Jars in Classpath
> > > --------------------------
> > > Log4j2 API - 2.0.1
> > >
> > >
> > > Regards,
> > > -Yogesh
> > >
> >
> >
> >
> > --
> > E-Mail: garydgreg...@gmail.com | ggreg...@apache.org
> > Java Persistence with Hibernate, Second Edition
> > <http://www.manning.com/bauer3/>
> > JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
> > Spring Batch in Action <http://www.manning.com/templier/>
> > Blog: http://garygregory.wordpress.com
> > Home: http://garygregory.com/
> > Tweet! http://twitter.com/GaryGregory
> >
>



-- 
E-Mail: garydgreg...@gmail.com | ggreg...@apache.org
Java Persistence with Hibernate, Second Edition
<http://www.manning.com/bauer3/>
JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
Spring Batch in Action <http://www.manning.com/templier/>
Blog: http://garygregory.wordpress.com
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory

Reply via email to