You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by ck...@apache.org on 2018/07/16 14:47:17 UTC
logging-log4j2 git commit: Revert "Inline private
StringBuilders.escapeAndDecrement"
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 <ck...@apache.org>
Authored: Mon Jul 16 10:47:05 2018 -0400
Committer: Carter Kozak <ck...@apache.org>
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);
Re: logging-log4j2 git commit: Revert "Inline private StringBuilders.escapeAndDecrement"
Posted by Gary Gregory <ga...@gmail.com>.
Thank you Carter.
Gary
On Mon, Jul 16, 2018 at 8:47 AM <ck...@apache.org> wrote:
> 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 <ck...@apache.org>
> Authored: Mon Jul 16 10:47:05 2018 -0400
> Committer: Carter Kozak <ck...@apache.org>
> 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);
>
>