Repository: logging-log4j2
Updated Branches:
  refs/heads/master ac0bf4bbe -> 424e6a0fe


Revert "Inline private StringBuilders.escapeAndDecrement"

This reverts commit ac0bf4bbe85cd4a07af195b3b001717a72888794.


Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/424e6a0f
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/424e6a0f
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/424e6a0f

Branch: refs/heads/master
Commit: 424e6a0fe4c203cfdd6e0219edc62158febb34f7
Parents: ac0bf4b
Author: Carter Kozak <[email protected]>
Authored: Mon Jul 16 10:47:05 2018 -0400
Committer: Carter Kozak <[email protected]>
Committed: Mon Jul 16 10:47:05 2018 -0400

----------------------------------------------------------------------
 .../logging/log4j/util/StringBuilders.java      | 28 +++++++++++---------
 1 file changed, 15 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/424e6a0f/log4j-api/src/main/java/org/apache/logging/log4j/util/StringBuilders.java
----------------------------------------------------------------------
diff --git 
a/log4j-api/src/main/java/org/apache/logging/log4j/util/StringBuilders.java 
b/log4j-api/src/main/java/org/apache/logging/log4j/util/StringBuilders.java
index 505abf1..2a83b24 100644
--- a/log4j-api/src/main/java/org/apache/logging/log4j/util/StringBuilders.java
+++ b/log4j-api/src/main/java/org/apache/logging/log4j/util/StringBuilders.java
@@ -197,33 +197,28 @@ public final class StringBuilders {
             final char c = toAppendTo.charAt(i);
             switch (c) {
                 case '\b':
-                    toAppendTo.setCharAt(lastPos--, 'b');
-                    toAppendTo.setCharAt(lastPos--, '\\');
+                    lastPos = escapeAndDecrement(toAppendTo, lastPos, 'b');
                     break;
+
                 case '\t':
-                    toAppendTo.setCharAt(lastPos--, 't');
-                    toAppendTo.setCharAt(lastPos--, '\\');
+                    lastPos = escapeAndDecrement(toAppendTo, lastPos, 't');
                     break;
 
                 case '\f':
-                    toAppendTo.setCharAt(lastPos--, 'f');
-                    toAppendTo.setCharAt(lastPos--, '\\');
+                    lastPos = escapeAndDecrement(toAppendTo, lastPos, 'f');
                     break;
 
                 case '\n':
-                    toAppendTo.setCharAt(lastPos--, 'n');
-                    toAppendTo.setCharAt(lastPos--, '\\');
+                    lastPos = escapeAndDecrement(toAppendTo, lastPos, 'n');
                     break;
 
                 case '\r':
-                    toAppendTo.setCharAt(lastPos--, 'r');
-                    toAppendTo.setCharAt(lastPos--, '\\');
+                    lastPos = escapeAndDecrement(toAppendTo, lastPos, 'r');
                     break;
 
                 case '"':
                 case '\\':
-                    toAppendTo.setCharAt(lastPos--, c);
-                    toAppendTo.setCharAt(lastPos--, '\\');
+                    lastPos = escapeAndDecrement(toAppendTo, lastPos, c);
                     break;
 
                 default:
@@ -236,12 +231,19 @@ public final class StringBuilders {
                         toAppendTo.setCharAt(lastPos--, 'u');
                         toAppendTo.setCharAt(lastPos--, '\\');
                     } else {
-                        toAppendTo.setCharAt(lastPos--, c);
+                        toAppendTo.setCharAt(lastPos, c);
+                        lastPos--;
                     }
             }
         }
     }
 
+    private static int escapeAndDecrement(StringBuilder toAppendTo, int 
lastPos, char c) {
+        toAppendTo.setCharAt(lastPos--, c);
+        toAppendTo.setCharAt(lastPos--, '\\');
+        return lastPos;
+    }
+
     public static void escapeXml(final StringBuilder toAppendTo, final int 
start) {
         for (int i = toAppendTo.length() - 1; i >= start; i--) { // backwards: 
length may change
             final char c = toAppendTo.charAt(i);

Reply via email to