Skip to content

Commit 9c91234

Browse files
committed
Suppress ExternalLoginUserNotExist error (go-gitea#21504)
Fixes go-gitea#21202 Closes go-gitea#21276 An `ExternalLoginUser` is not mandatory if the current user account was created with/by the external login source.
1 parent 8043fbc commit 9c91234

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

routers/web/auth/auth.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
package auth
77

88
import (
9+
"errors"
910
"fmt"
1011
"net/http"
1112
"strings"
@@ -23,6 +24,7 @@ import (
2324
"code.gitea.io/gitea/modules/session"
2425
"code.gitea.io/gitea/modules/setting"
2526
"code.gitea.io/gitea/modules/timeutil"
27+
"code.gitea.io/gitea/modules/util"
2628
"code.gitea.io/gitea/modules/web"
2729
"code.gitea.io/gitea/modules/web/middleware"
2830
"code.gitea.io/gitea/routers/utils"
@@ -613,7 +615,9 @@ func handleUserCreated(ctx *context.Context, u *user_model.User, gothUser *goth.
613615
// update external user information
614616
if gothUser != nil {
615617
if err := externalaccount.UpdateExternalUser(u, *gothUser); err != nil {
616-
log.Error("UpdateExternalUser failed: %v", err)
618+
if !errors.Is(err, util.ErrNotExist) {
619+
log.Error("UpdateExternalUser failed: %v", err)
620+
}
617621
}
618622
}
619623

routers/web/auth/oauth.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1061,7 +1061,9 @@ func handleOAuth2SignIn(ctx *context.Context, source *auth.Source, u *user_model
10611061

10621062
// update external user information
10631063
if err := externalaccount.UpdateExternalUser(u, gothUser); err != nil {
1064-
log.Error("UpdateExternalUser failed: %v", err)
1064+
if !errors.Is(err, util.ErrNotExist) {
1065+
log.Error("UpdateExternalUser failed: %v", err)
1066+
}
10651067
}
10661068

10671069
if err := resetLocale(ctx, u); err != nil {

0 commit comments

Comments
 (0)