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);
>
>