소스 검색

Parse RequestPath when cache is empty

Closes gh-16771
Josh Cummings 5 달 전
부모
커밋
1966ff3ce8
1개의 변경된 파일5개의 추가작업 그리고 2개의 파일을 삭제
  1. 5 2
      web/src/main/java/org/springframework/security/web/servlet/util/matcher/PathPatternRequestMatcher.java

+ 5 - 2
web/src/main/java/org/springframework/security/web/servlet/util/matcher/PathPatternRequestMatcher.java

@@ -127,12 +127,15 @@ public final class PathPatternRequestMatcher implements RequestMatcher {
 	}
 
 	private RequestPath getRequestPath(HttpServletRequest request) {
+		RequestPath path;
 		if (ServletRequestPathUtils.hasParsedRequestPath(request)) {
-			return ServletRequestPathUtils.getParsedRequestPath(request);
+			path = ServletRequestPathUtils.getParsedRequestPath(request);
 		}
 		else {
-			return ServletRequestPathUtils.parseAndCache(request);
+			path = ServletRequestPathUtils.parseAndCache(request);
+			ServletRequestPathUtils.clearParsedRequestPath(request);
 		}
+		return path;
 	}
 
 	/**