On 06/01/2010 18:10, ma...@apache.org wrote:
> Author: markt
> Date: Wed Jan  6 18:10:41 2010
> New Revision: 896589
> 
> URL: http://svn.apache.org/viewvc?rev=896589&view=rev
> Log: (empty)
> 
> --- tomcat/trunk/java/org/apache/el/parser/ELParser.jjt (original)
> +++ tomcat/trunk/java/org/apache/el/parser/ELParser.jjt Wed Jan  6 18:10:41 
> 2010
> @@ -353,11 +353,15 @@
>  /* 
> ====================================================================================
>  */
>  <DEFAULT> TOKEN :
>  {
> +  /*
> +   * The following definition uses + rather than * in two places to prevent
> +   * LITERAL_EXPRESSION matching the empty string that could result in the
> +   * Parser entering an infinite loop.
> +   */
>    < LITERAL_EXPRESSION:
> -    ((~["\\", "$", "#"])
> -      | ("\\" ("\\" | "$" | "#"))
> -      | ("$" ~["{", "$"])
> -      | ("#" ~["{", "#"])
> +    (   (~["$", "#", "\\"])* "\\" (["$", "#"])?
> +      | (~["$", "#"])* (["$", "#"] ~["{"])
> +      | (~["$", "#"])+

I've raised this with the EL spec folks. Hopefully it will get fixed in
a future version.

Mark



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to