diff --git a/src/main/java/org/olat/login/oauth/ui/OAuthAuthenticationController.java b/src/main/java/org/olat/login/oauth/ui/OAuthAuthenticationController.java index a4bb0027101d0f11b1ce7eeeb91e6376376fde36..de7c43c2a944bd142c8acd03866f92ebcc561d8d 100644 --- a/src/main/java/org/olat/login/oauth/ui/OAuthAuthenticationController.java +++ b/src/main/java/org/olat/login/oauth/ui/OAuthAuthenticationController.java @@ -31,6 +31,7 @@ import org.olat.core.gui.components.form.flexible.impl.FormBasicController; import org.olat.core.gui.components.form.flexible.impl.FormEvent; import org.olat.core.gui.components.link.Link; import org.olat.core.gui.control.Controller; +import org.olat.core.gui.control.DispatchResult; import org.olat.core.gui.control.WindowControl; import org.olat.core.gui.control.generic.dtabs.Activateable2; import org.olat.core.gui.media.MediaResource; @@ -115,8 +116,11 @@ public class OAuthAuthenticationController extends FormBasicController implement } private void redirect(UserRequest ureq, OAuthSPI provider) { - HttpSession session = ureq.getHttpReq().getSession(); - MediaResource redirectResource = new OAuthResource(provider, session); - ureq.getDispatchResult().setResultingMediaResource(redirectResource); + DispatchResult result = ureq.getDispatchResult(); + if(result.getResultingMediaResource() == null) {// prevent twice the redirect + HttpSession session = ureq.getHttpReq().getSession(); + MediaResource redirectResource = new OAuthResource(provider, session); + result.setResultingMediaResource(redirectResource); + } } } \ No newline at end of file