File tree Expand file tree Collapse file tree 2 files changed +15
-1
lines changed
main/java/com/hubspot/jinjava/util
test/java/com/hubspot/jinjava/util Expand file tree Collapse file tree 2 files changed +15
-1
lines changed Original file line number Diff line number Diff line change @@ -175,7 +175,12 @@ public static Set<String> findDeferredWords(
175175 );
176176 prevQuotePos = curPos ;
177177 }
178- prevChar = c ;
178+ if (prevChar == '\\' ) {
179+ // Double escapes cancel out.
180+ prevChar = 0 ;
181+ } else {
182+ prevChar = c ;
183+ }
179184 curPos ++;
180185 }
181186 words .addAll (
Original file line number Diff line number Diff line change @@ -357,6 +357,15 @@ public void itHandlesSingleQuotes() {
357357 .isEqualTo ("' & ' & '\" " );
358358 }
359359
360+ @ Test
361+ public void itHandlesEscapedSlashBeforeQuoteProperly () {
362+ EagerExpressionResult eagerExpressionResult = eagerResolveExpression (
363+ "deferred|replace('\\ \\ ', '.')"
364+ );
365+ assertThat (eagerExpressionResult .getDeferredWords ())
366+ .containsExactlyInAnyOrder ("deferred" , "replace.filter" );
367+ }
368+
360369 @ Test
361370 public void itHandlesNewlines () {
362371 context .put ("foo" , "\n " );
You can’t perform that action at this time.
0 commit comments