Fix a NullPointerException in OpenIdServiceImpl on response
If we fail discovery on the return response we can't complete
the request. Cancel the login attempt as though the provider
failed out.
Signed-off-by: Shawn O. Pearce <sop@google.com>
diff --git a/src/main/java/com/google/gerrit/server/OpenIdServiceImpl.java b/src/main/java/com/google/gerrit/server/OpenIdServiceImpl.java
index 3d7def1..e7a38d4 100644
--- a/src/main/java/com/google/gerrit/server/OpenIdServiceImpl.java
+++ b/src/main/java/com/google/gerrit/server/OpenIdServiceImpl.java
@@ -212,6 +212,13 @@
final State state;
state = init(req, openidIdentifier, mode, remember, returnToken);
+ if (state == null) {
+ // Re-discovery must have failed, we can't run a login.
+ //
+ cancel(req, rsp);
+ return;
+ }
+
final String returnTo = req.getParameter("openid.return_to");
if (returnTo != null && returnTo.contains("openid.rpnonce=")) {
// Some providers (claimid.com) seem to embed these request