Repository: logging-log4j2 Updated Branches: refs/heads/master 1d474bf63 -> ac0bf4bbe
Inline private StringBuilders.escapeAndDecrement Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/ac0bf4bb Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/ac0bf4bb Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/ac0bf4bb Branch: refs/heads/master Commit: ac0bf4bbe85cd4a07af195b3b001717a72888794 Parents: 1d474bf Author: Carter Kozak <[email protected]> Authored: Mon Jul 16 07:10:13 2018 -0400 Committer: Carter Kozak <[email protected]> Committed: Mon Jul 16 07:10:13 2018 -0400 ---------------------------------------------------------------------- .../logging/log4j/util/StringBuilders.java | 28 +++++++++----------- 1 file changed, 13 insertions(+), 15 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/ac0bf4bb/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 2a83b24..505abf1 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,28 +197,33 @@ public final class StringBuilders { final char c = toAppendTo.charAt(i); switch (c) { case '\b': - lastPos = escapeAndDecrement(toAppendTo, lastPos, 'b'); + toAppendTo.setCharAt(lastPos--, 'b'); + toAppendTo.setCharAt(lastPos--, '\\'); break; - case '\t': - lastPos = escapeAndDecrement(toAppendTo, lastPos, 't'); + toAppendTo.setCharAt(lastPos--, 't'); + toAppendTo.setCharAt(lastPos--, '\\'); break; case '\f': - lastPos = escapeAndDecrement(toAppendTo, lastPos, 'f'); + toAppendTo.setCharAt(lastPos--, 'f'); + toAppendTo.setCharAt(lastPos--, '\\'); break; case '\n': - lastPos = escapeAndDecrement(toAppendTo, lastPos, 'n'); + toAppendTo.setCharAt(lastPos--, 'n'); + toAppendTo.setCharAt(lastPos--, '\\'); break; case '\r': - lastPos = escapeAndDecrement(toAppendTo, lastPos, 'r'); + toAppendTo.setCharAt(lastPos--, 'r'); + toAppendTo.setCharAt(lastPos--, '\\'); break; case '"': case '\\': - lastPos = escapeAndDecrement(toAppendTo, lastPos, c); + toAppendTo.setCharAt(lastPos--, c); + toAppendTo.setCharAt(lastPos--, '\\'); break; default: @@ -231,19 +236,12 @@ public final class StringBuilders { toAppendTo.setCharAt(lastPos--, 'u'); toAppendTo.setCharAt(lastPos--, '\\'); } else { - toAppendTo.setCharAt(lastPos, c); - lastPos--; + toAppendTo.setCharAt(lastPos--, c); } } } } - 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);
