From c7d5e76737c64c40b6551122f252bb840627a4ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ralfs=20G=C5=ABtmanis?= Date: Wed, 6 Sep 2023 11:27:11 +0300 Subject: [PATCH] Ammend more consistent naming using CharSequence instead of String Add condition to avoid needlessly creating String object in format if the value already is instanceof CharSequence --- .../github/jknack/handlebars/internal/Variable.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/handlebars/src/main/java/com/github/jknack/handlebars/internal/Variable.java b/handlebars/src/main/java/com/github/jknack/handlebars/internal/Variable.java index 9d447ef93..97b58cbc7 100644 --- a/handlebars/src/main/java/com/github/jknack/handlebars/internal/Variable.java +++ b/handlebars/src/main/java/com/github/jknack/handlebars/internal/Variable.java @@ -225,12 +225,17 @@ protected void collect(final Collection result, final TagType tagType) { */ protected CharSequence formatAndEscape(final Object value, final Formatter.Chain formatter) { Object formatted = formatter.format(value); - CharSequence formattedString = formatted.toString(); + CharSequence formattedCharSequence; + if (value instanceof CharSequence) { + formattedCharSequence = (CharSequence) value; + } else { + formattedCharSequence = formatted.toString(); + } if (formatted instanceof Handlebars.SafeString) { - return formattedString; + return formattedCharSequence; } - CharSequence escapedString = escapingStrategy.escape(formattedString); - return escapedString; + CharSequence escapedCharSequence = escapingStrategy.escape(formattedCharSequence); + return escapedCharSequence; } @Override