mirror of
https://github.com/go-vikunja/vikunja.git
synced 2026-02-01 22:47:40 +00:00
fix(openid): check different provider types
Related to https://github.com/go-vikunja/vikunja/issues/1165
This commit is contained in:
@@ -105,7 +105,16 @@ func GetProvider(key string) (provider *Provider, err error) {
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
provider = result.(*Provider)
|
||||
|
||||
// Handle type assertion safely - the memory backend strips pointer info when storing
|
||||
switch v := result.(type) {
|
||||
case *Provider:
|
||||
provider = v
|
||||
case Provider:
|
||||
provider = &v
|
||||
default:
|
||||
return nil, fmt.Errorf("invalid cached provider type: %T", result)
|
||||
}
|
||||
|
||||
err = provider.setOicdProvider()
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user