Skip to content

Commit 0ce7d66

Browse files
authored
Fix avatar upload error handling (#35887)
Fix #35884
1 parent b2feedd commit 0ce7d66

File tree

3 files changed

+8
-10
lines changed

3 files changed

+8
-10
lines changed

services/auth/source/ldap/source_authenticate.go

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -105,9 +105,7 @@ func (source *Source) Authenticate(ctx context.Context, user *user_model.User, u
105105
}
106106
}
107107
if source.AttributeAvatar != "" {
108-
if err := user_service.UploadAvatar(ctx, user, sr.Avatar); err != nil {
109-
return user, err
110-
}
108+
_ = user_service.UploadAvatar(ctx, user, sr.Avatar)
111109
}
112110
}
113111

services/repository/avatar.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import (
2121
func UploadAvatar(ctx context.Context, repo *repo_model.Repository, data []byte) error {
2222
avatarData, err := avatar.ProcessAvatarImage(data)
2323
if err != nil {
24-
return err
24+
return fmt.Errorf("UploadAvatar: failed to process repo avatar image: %w", err)
2525
}
2626

2727
newAvatar := avatar.HashAvatar(repo.ID, data)
@@ -36,19 +36,19 @@ func UploadAvatar(ctx context.Context, repo *repo_model.Repository, data []byte)
3636
// Then repo will be removed - only it avatar file will be removed
3737
repo.Avatar = newAvatar
3838
if err := repo_model.UpdateRepositoryColsNoAutoTime(ctx, repo, "avatar"); err != nil {
39-
return fmt.Errorf("UploadAvatar: Update repository avatar: %w", err)
39+
return fmt.Errorf("UploadAvatar: failed to update repository avatar: %w", err)
4040
}
4141

4242
if err := storage.SaveFrom(storage.RepoAvatars, repo.CustomAvatarRelativePath(), func(w io.Writer) error {
4343
_, err := w.Write(avatarData)
4444
return err
4545
}); err != nil {
46-
return fmt.Errorf("UploadAvatar %s failed: Failed to remove old repo avatar %s: %w", repo.RelativePath(), newAvatar, err)
46+
return fmt.Errorf("UploadAvatar: failed to save repo avatar %s: %w", newAvatar, err)
4747
}
4848

4949
if len(oldAvatarPath) > 0 {
5050
if err := storage.RepoAvatars.Delete(oldAvatarPath); err != nil {
51-
return fmt.Errorf("UploadAvatar: Failed to remove old repo avatar %s: %w", oldAvatarPath, err)
51+
return fmt.Errorf("UploadAvatar: failed to remove old repo avatar %s: %w", oldAvatarPath, err)
5252
}
5353
}
5454
return nil

services/user/avatar.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,21 +21,21 @@ import (
2121
func UploadAvatar(ctx context.Context, u *user_model.User, data []byte) error {
2222
avatarData, err := avatar.ProcessAvatarImage(data)
2323
if err != nil {
24-
return err
24+
return fmt.Errorf("UploadAvatar: failed to process user avatar image: %w", err)
2525
}
2626

2727
return db.WithTx(ctx, func(ctx context.Context) error {
2828
u.UseCustomAvatar = true
2929
u.Avatar = avatar.HashAvatar(u.ID, data)
3030
if err = user_model.UpdateUserCols(ctx, u, "use_custom_avatar", "avatar"); err != nil {
31-
return fmt.Errorf("updateUser: %w", err)
31+
return fmt.Errorf("UploadAvatar: failed to update user avatar: %w", err)
3232
}
3333

3434
if err := storage.SaveFrom(storage.Avatars, u.CustomAvatarRelativePath(), func(w io.Writer) error {
3535
_, err := w.Write(avatarData)
3636
return err
3737
}); err != nil {
38-
return fmt.Errorf("Failed to create dir %s: %w", u.CustomAvatarRelativePath(), err)
38+
return fmt.Errorf("UploadAvatar: failed to save user avatar %s: %w", u.CustomAvatarRelativePath(), err)
3939
}
4040

4141
return nil

0 commit comments

Comments
 (0)