Author: markt Date: Thu Jul 17 14:09:35 2008 New Revision: 677728 URL: http://svn.apache.org/viewvc?rev=677728&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=42565 Make EL ternary expression without space before colon work. Patch provided by Lucas Galfaso. This is just the jjt patch. The changes to generated code will follow.
Modified: tomcat/tc6.0.x/trunk/STATUS.txt tomcat/tc6.0.x/trunk/java/org/apache/el/parser/ELParser.jjt tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=677728&r1=677727&r2=677728&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Thu Jul 17 14:09:35 2008 @@ -48,14 +48,6 @@ +1: fhanik -1: -* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=42565 - Make EL ternary expression without space before colon work - Patch provided by Lucas Galfaso - This is just the jjt patch. There will also be changes to generated code - http://svn.apache.org/viewvc?rev=675726&view=rev - +1: markt, remm, fhanik - -1: - * Fix comet behavior Invoke READ when there is a body and make sure END is called if CometEvent.close is called during an invokation http://svn.apache.org/viewvc?rev=677473&view=rev Modified: tomcat/tc6.0.x/trunk/java/org/apache/el/parser/ELParser.jjt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/el/parser/ELParser.jjt?rev=677728&r1=677727&r2=677728&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/el/parser/ELParser.jjt (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/el/parser/ELParser.jjt Thu Jul 17 14:09:35 2008 @@ -31,7 +31,7 @@ NODE_DEFAULT_VOID=true; JAVA_UNICODE_ESCAPE=false; UNICODE_INPUT=true; - BUILD_NODE_FILES=true; + BUILD_NODE_FILES=false; } /* == Parser Declaration == */ @@ -274,20 +274,19 @@ */ void Function() #Function : { - Token t0 = null; - Token t1 = null; + Token tx = null; } { - (t0=<NAMESPACE>)? t1=<IDENTIFIER> + (tx=<FUNCTION_CALL>) (Expression() (<COMMA> Expression())*)? <RPAREN> { - if (t0 != null) { - jjtThis.setPrefix(t0.image.substring(0, t0.image.length() - 1)); - jjtThis.setLocalName(t1.image); + int split = tx.image.indexOf(":"); + if (split!=-1) { + jjtThis.setPrefix(tx.image.substring(0, split)); + jjtThis.setLocalName(tx.image.substring(split + 1, tx.image.length() - 1)); } else { - jjtThis.setLocalName(t1.image); + jjtThis.setLocalName(tx.image.substring(0, tx.image.length() - 1)); } } - <LPAREN> (Expression() (<COMMA> Expression())*)? <RPAREN> } /* @@ -428,7 +427,9 @@ | < MOD0 : "%" > | < MOD1 : "mod" > | < IDENTIFIER : (<LETTER>|<IMPL_OBJ_START>) (<LETTER>|<DIGIT>)* > -| < NAMESPACE : (<IDENTIFIER> (<IDENTIFIER>|<MINUS>|<DOT>)* <COLON>) > +| < #NAMESPACE : ( <NAMESPACE_NAME> <COLON>) > +| < #NAMESPACE_NAME: (<IDENTIFIER> (<LETTER>|<DIGIT>|<MINUS>|<DOT>)*) > +| < FUNCTION_CALL: (<NAMESPACE>)? <IDENTIFIER> <LPAREN> > | < FUNCTIONSUFFIX : (<IDENTIFIER>) > | < #IMPL_OBJ_START: "#" > | < #LETTER: Modified: tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml?rev=677728&r1=677727&r2=677728&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Thu Jul 17 14:09:35 2008 @@ -47,6 +47,14 @@ </update> </changelog> </subsection> + <subsection name="Jasper"> + <changelog> + <fix> + <bug>42565</bug>: Make EL ternary expression without space before colon + work. Patch provided by Lucas Galfaso. (markt) + </fix> + </changelog> + </subsection> <subsection name="Webapps"> <changelog> <update> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]