You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lu...@apache.org on 2012/02/25 17:38:35 UTC

svn commit: r1293641 - /myfaces/core/branches/2.0.x/impl/src/main/java/org/apache/myfaces/util/CDataEndEscapeFilterWriter.java

Author: lu4242
Date: Sat Feb 25 16:38:35 2012
New Revision: 1293641

URL: http://svn.apache.org/viewvc?rev=1293641&view=rev
Log:
MYFACES-3476 New CDATA fast filter throws Exception (Thanks to James G for provide this patch)

Modified:
    myfaces/core/branches/2.0.x/impl/src/main/java/org/apache/myfaces/util/CDataEndEscapeFilterWriter.java

Modified: myfaces/core/branches/2.0.x/impl/src/main/java/org/apache/myfaces/util/CDataEndEscapeFilterWriter.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2.0.x/impl/src/main/java/org/apache/myfaces/util/CDataEndEscapeFilterWriter.java?rev=1293641&r1=1293640&r2=1293641&view=diff
==============================================================================
--- myfaces/core/branches/2.0.x/impl/src/main/java/org/apache/myfaces/util/CDataEndEscapeFilterWriter.java (original)
+++ myfaces/core/branches/2.0.x/impl/src/main/java/org/apache/myfaces/util/CDataEndEscapeFilterWriter.java Sat Feb 25 16:38:35 2012
@@ -64,8 +64,8 @@ public class CDataEndEscapeFilterWriter 
             char c = cbuf[off+i];
             if (c1 == ']' && c2 == ']' && c == '>')
             {
-                super.write(cbuf, index, i+1);
-                index = i+1;
+                super.write(cbuf, index, i+1 - ( index - off ) ); 
+                index = off+i+1;
                 out.write("<![CDATA[]]]]><![CDATA[>");
             }
             c1 = c2;
@@ -87,8 +87,8 @@ public class CDataEndEscapeFilterWriter 
             char c = str.charAt(off+i);
             if (c1 == ']' && c2 == ']' && c == '>')
             {
-                super.write(str, index, i+1);
-                index = i+1;
+                super.write(str, index, i+1 - ( index - off ) );
+                index = off+i+1;
                 out.write("<![CDATA[]]]]><![CDATA[>");
             }
             c1 = c2;