This is an automated email from the ASF dual-hosted git repository. ddekany pushed a commit to branch 3 in repository https://gitbox.apache.org/repos/asf/freemarker.git
commit 651b73ed013e86f2a9fc18fdf51949b7bb66507e Author: ddekany <[email protected]> AuthorDate: Thu Jan 5 16:35:52 2023 +0100 We don't need two kinds of hexadecimal digits for BC now --- .../templatesuite/expected/string-builtins1.txt | 2 +- .../templatesuite/templates/string-builtins1.f3ac | 2 +- .../apache/freemarker/core/util/_StringUtils.java | 30 ++++++++++------------ 3 files changed, 15 insertions(+), 19 deletions(-) diff --git a/freemarker-core-test/src/test/resources/org/apache/freemarker/core/templatesuite/expected/string-builtins1.txt b/freemarker-core-test/src/test/resources/org/apache/freemarker/core/templatesuite/expected/string-builtins1.txt index a43e56c7..b8aa46e1 100644 --- a/freemarker-core-test/src/test/resources/org/apache/freemarker/core/templatesuite/expected/string-builtins1.txt +++ b/freemarker-core-test/src/test/resources/org/apache/freemarker/core/templatesuite/expected/string-builtins1.txt @@ -93,7 +93,7 @@ FOOBAR [a] = [a] [a\\'x'\nb] = [a\\'x'\nb] -[\u0001\u001a ] = [\u0001\u001a ] +[\u0001\u001A ] = [\u0001\u001A ] [a] = [a] [a\\\'x\'\nb] = [a\\\'x\'\nb] diff --git a/freemarker-core-test/src/test/resources/org/apache/freemarker/core/templatesuite/templates/string-builtins1.f3ac b/freemarker-core-test/src/test/resources/org/apache/freemarker/core/templatesuite/templates/string-builtins1.f3ac index ab6187c7..86b0563d 100644 --- a/freemarker-core-test/src/test/resources/org/apache/freemarker/core/templatesuite/templates/string-builtins1.f3ac +++ b/freemarker-core-test/src/test/resources/org/apache/freemarker/core/templatesuite/templates/string-builtins1.f3ac @@ -110,7 +110,7 @@ ${c?eval} [${"a"?jString}] = [a] [${"a\\'x'\nb"?jString}] = [a\\'x'\nb] -[${"\x0001\x001A "?jString}] = [\u0001\u001a ] +[${"\x0001\x001A "?jString}] = [\u0001\u001A ] [${"a"?jsString}] = [a] [${"a\\'x'\nb"?jsString}] = [a\\\'x\'\nb] diff --git a/freemarker-core/src/main/java/org/apache/freemarker/core/util/_StringUtils.java b/freemarker-core/src/main/java/org/apache/freemarker/core/util/_StringUtils.java index 63367313..c427cef5 100644 --- a/freemarker-core/src/main/java/org/apache/freemarker/core/util/_StringUtils.java +++ b/freemarker-core/src/main/java/org/apache/freemarker/core/util/_StringUtils.java @@ -629,9 +629,9 @@ public class _StringUtils { } else { b.append("\\u00"); int x = c / 0x10; - b.append(toHexDigitUpperCase(x)); + b.append(toHexDigit(x)); x = c & 0xF; - b.append(toHexDigitUpperCase(x)); + b.append(toHexDigit(x)); } } else { b.append(c); @@ -682,8 +682,8 @@ public class _StringUtils { b.append("\\t"); } else { b.append("\\u00"); - b.append(toHexDigitLowerCase(c / 0x10)); - b.append(toHexDigitLowerCase(c & 0xF)); } + b.append(toHexDigit(c / 0x10)); + b.append(toHexDigit(c & 0xF)); } } else { b.append(c); } @@ -742,8 +742,8 @@ public class _StringUtils { b.append("\\t"); } else { b.append("\\u00"); - b.append(toHexDigitLowerCase(c / 0x10)); - b.append(toHexDigitLowerCase(c & 0xF)); + b.append(toHexDigit(c / 0x10)); + b.append(toHexDigit(c & 0xF)); } } else { b.append(c); @@ -942,15 +942,15 @@ public class _StringUtils { } else if (escapeType == ESC_HEXA) { if (!compatibility.jsonCompatible && c < 0x100) { sb.append('x'); - sb.append(toHexDigitUpperCase(c >> 4)); - sb.append(toHexDigitUpperCase(c & 0xF)); + sb.append(toHexDigit(c >> 4)); + sb.append(toHexDigit(c & 0xF)); } else { sb.append('u'); int cp = c; - sb.append(toHexDigitUpperCase((cp >> 12) & 0xF)); - sb.append(toHexDigitUpperCase((cp >> 8) & 0xF)); - sb.append(toHexDigitUpperCase((cp >> 4) & 0xF)); - sb.append(toHexDigitUpperCase(cp & 0xF)); + sb.append(toHexDigit((cp >> 12) & 0xF)); + sb.append(toHexDigit((cp >> 8) & 0xF)); + sb.append(toHexDigit((cp >> 4) & 0xF)); + sb.append(toHexDigit(cp & 0xF)); } } else { // escapeType == ESC_BACKSLASH sb.append(c); @@ -971,11 +971,7 @@ public class _StringUtils { return sb == null ? s : sb.toString(); } - private static char toHexDigitLowerCase(int d) { - return (char) (d < 0xA ? d + '0' : d - 0xA + 'a'); - } - - private static char toHexDigitUpperCase(int d) { + private static char toHexDigit(int d) { return (char) (d < 0xA ? d + '0' : d - 0xA + 'A'); }
