Fixes gh-4652
@@ -42,6 +42,6 @@ public interface AuthorizationRequestRepository {
void saveAuthorizationRequest(AuthorizationRequest authorizationRequest, HttpServletRequest request,
HttpServletResponse response);
- void removeAuthorizationRequest(HttpServletRequest request);
+ AuthorizationRequest removeAuthorizationRequest(HttpServletRequest request);
}
@@ -54,7 +54,11 @@ public final class HttpSessionAuthorizationRequestRepository implements Authoriz
@Override
- public void removeAuthorizationRequest(HttpServletRequest request) {
- request.getSession().removeAttribute(this.sessionAttributeName);
+ public AuthorizationRequest removeAuthorizationRequest(HttpServletRequest request) {
+ AuthorizationRequest authorizationRequest = this.loadAuthorizationRequest(request);
+ if (authorizationRequest != null) {
+ request.getSession().removeAttribute(this.sessionAttributeName);
+ }
+ return authorizationRequest;