diff --git a/pkg/modules/auth/openid/providers.go b/pkg/modules/auth/openid/providers.go index 7d4133ba88..5f23d3da7f 100644 --- a/pkg/modules/auth/openid/providers.go +++ b/pkg/modules/auth/openid/providers.go @@ -33,7 +33,12 @@ import ( func GetAllProviders() (providers []*Provider, err error) { ps, err := keyvalue.Get("openid_providers") if err != nil && kerr.IsErrValueNotFoundForKey(err) { - rawProvider := config.AuthOpenIDProviders.Get().([]interface{}) + rawProviders := config.AuthOpenIDProviders.Get() + if rawProviders == nil { + return nil, nil + } + + rawProvider := rawProviders.([]interface{}) for _, p := range rawProvider { pi := p.(map[interface{}]interface{}) diff --git a/pkg/routes/api/v1/info.go b/pkg/routes/api/v1/info.go index faa06db5b8..63dd40d471 100644 --- a/pkg/routes/api/v1/info.go +++ b/pkg/routes/api/v1/info.go @@ -17,6 +17,7 @@ package v1 import ( + "code.vikunja.io/api/pkg/log" "net/http" "code.vikunja.io/api/pkg/config" @@ -98,7 +99,8 @@ func Info(c echo.Context) error { providers, err := openid.GetAllProviders() if err != nil { - return err + log.Errorf("Error while getting openid providers for /info: %s", err) + // No return here to not break /info } info.AuthInfo.OpenIDConnect.Providers = providers