diff --git a/spring-web/src/main/java/org/springframework/web/util/HtmlCharacterEntityDecoder.java b/spring-web/src/main/java/org/springframework/web/util/HtmlCharacterEntityDecoder.java index 2d6db518b20..b99b97fea97 100644 --- a/spring-web/src/main/java/org/springframework/web/util/HtmlCharacterEntityDecoder.java +++ b/spring-web/src/main/java/org/springframework/web/util/HtmlCharacterEntityDecoder.java @@ -70,13 +70,6 @@ class HtmlCharacterEntityDecoder { this.nextSemicolonPosition = this.originalMessage.indexOf(';', this.nextPotentialReferencePosition + 1); } - boolean isPotentialReference = (this.nextPotentialReferencePosition != -1 && - this.nextSemicolonPosition != -1 && - this.nextSemicolonPosition - this.nextPotentialReferencePosition < MAX_REFERENCE_SIZE); - - if (isPotentialReference) { - break; - } if (this.nextPotentialReferencePosition == -1) { break; } @@ -84,6 +77,9 @@ class HtmlCharacterEntityDecoder { this.nextPotentialReferencePosition = -1; break; } + if (this.nextSemicolonPosition - this.nextPotentialReferencePosition < MAX_REFERENCE_SIZE) { + break; + } this.nextPotentialReferencePosition = this.nextPotentialReferencePosition + 1; }