aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGiteabot <teabot@gitea.io>2025-04-02 09:37:17 +0800
committerGitHub <noreply@github.com>2025-04-02 09:37:17 +0800
commit25e409e025a125a5a8012f9f015089e93927d08c (patch)
tree05e2e7e832895632888442d077cd145957898885
parentf8f24d83cfee9b4c8d0ee60183fee0d6a91da67f (diff)
downloadgitea-25e409e025a125a5a8012f9f015089e93927d08c.tar.gz
gitea-25e409e025a125a5a8012f9f015089e93927d08c.zip
Return default avatar url when user id is zero rather than updating database (#34094) (#34095)
Backport #34094 by @lunny When visit commit list, it would update the user avatar even if id = 0, which was unnecessary operations. This PR returned default avatar for the git only user avatar rendering who's user id is zero. ```log database duration=0.0005s db.sql="UPDATE `user` SET `avatar` = ?, `updated_unix` = ? WHERE `id`=?" database duration=0.0007s db.sql="UPDATE `user` SET `avatar` = ?, `updated_unix` = ? WHERE `id`=?" ... ``` Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
-rw-r--r--models/user/avatar.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/models/user/avatar.go b/models/user/avatar.go
index 2a41b99129..3d9fc4452f 100644
--- a/models/user/avatar.go
+++ b/models/user/avatar.go
@@ -61,7 +61,9 @@ func GenerateRandomAvatar(ctx context.Context, u *User) error {
// AvatarLinkWithSize returns a link to the user's avatar with size. size <= 0 means default size
func (u *User) AvatarLinkWithSize(ctx context.Context, size int) string {
- if u.IsGhost() || u.IsGiteaActions() {
+ // ghost user was deleted, Gitea actions is a bot user, 0 means the user should be a virtual user
+ // which comes from git configure information
+ if u.IsGhost() || u.IsGiteaActions() || u.ID <= 0 {
return avatars.DefaultAvatarLink()
}