@@ -15,38 +15,39 @@ public static void escape(String value, Writer writer, boolean escapeEscaped) {
1515 int length = value .length ();
1616 for (int i = 0 ; i < length ; i ++) {
1717 char c = value .charAt (i );
18- switch (c ) {
19- case '&' :
20- // If we match an entity or char ref then keep it
21- // as is in the text. Otherwise, replace it.
22- if (!escapeEscaped && matchesEntityRef (i + 1 , length , value )) {
23- // If we are at the beginning we can just keep going
24- if (position != 0 ) {
25- position = append (value , writer , position , i , "&" );
26- }
27- } else {
28- position = append (value , writer , position , i , "&" );
29- }
30- break ;
31- case '<' :
32- position = append (value , writer , position , i , "<" );
33- break ;
34- case '>' :
35- position = append (value , writer , position , i , ">" );
36- break ;
37- case '"' :
38- position = append (value , writer , position , i , """ );
39- break ;
40- case '\'' :
41- position = append (value , writer , position , i , "'" );
42- break ;
43- }
4418 if (c <= 13 ) {
4519 writer .append (value , position , i );
4620 writer .append ("&#" );
4721 writer .append (String .valueOf ((int )c ));
4822 writer .append (";" );
4923 position = i + 1 ;
24+ } else {
25+ switch (c ) {
26+ case '&' :
27+ // If we match an entity or char ref then keep it
28+ // as is in the text. Otherwise, replace it.
29+ if (!escapeEscaped && matchesEntityRef (i + 1 , length , value )) {
30+ // If we are at the beginning we can just keep going
31+ if (position != 0 ) {
32+ position = append (value , writer , position , i , "&" );
33+ }
34+ } else {
35+ position = append (value , writer , position , i , "&" );
36+ }
37+ break ;
38+ case '<' :
39+ position = append (value , writer , position , i , "<" );
40+ break ;
41+ case '>' :
42+ position = append (value , writer , position , i , ">" );
43+ break ;
44+ case '"' :
45+ position = append (value , writer , position , i , """ );
46+ break ;
47+ case '\'' :
48+ position = append (value , writer , position , i , "'" );
49+ break ;
50+ }
5051 }
5152 }
5253 writer .append (value , position , length );
0 commit comments