diff options
author | wxiaoguang <wxiaoguang@gmail.com> | 2023-05-16 03:02:10 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-15 19:02:10 +0000 |
commit | 99283415bcbaa8acfe4d249ce3040de2f3a8b006 (patch) | |
tree | fec2fa557f45ffce4deea301758b869d87d5e4b9 /services | |
parent | b9fad73e9fcf40e81cde3304198105af6c668421 (diff) | |
download | gitea-99283415bcbaa8acfe4d249ce3040de2f3a8b006.tar.gz gitea-99283415bcbaa8acfe4d249ce3040de2f3a8b006.zip |
Refactor Pull Mirror and fix out-of-sync bugs (#24732)
The "mirror" table and "repository" table might be out-of-sync in some
cases.
It means that "IsMirror=true" but "Mirror=nil"
This PR removes unnecessary "Mirror" field, rename "Mirror" to
"PullMirror" and fix nil panic bug.
Screenshot of changed templates:
![image](https://github.com/go-gitea/gitea/assets/2114189/c0f2bdfc-5911-43ea-b989-b19619de4235)
![image](https://github.com/go-gitea/gitea/assets/2114189/1078b41a-484f-4c06-8c2f-edb9e658275d)
Diffstat (limited to 'services')
-rw-r--r-- | services/convert/repository.go | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/services/convert/repository.go b/services/convert/repository.go index f470fd1656..54a61efe43 100644 --- a/services/convert/repository.go +++ b/services/convert/repository.go @@ -124,11 +124,10 @@ func innerToRepo(ctx context.Context, repo *repo_model.Repository, mode perm.Acc mirrorInterval := "" var mirrorUpdated time.Time if repo.IsMirror { - var err error - repo.Mirror, err = repo_model.GetMirrorByRepoID(ctx, repo.ID) + pullMirror, err := repo_model.GetMirrorByRepoID(ctx, repo.ID) if err == nil { - mirrorInterval = repo.Mirror.Interval.String() - mirrorUpdated = repo.Mirror.UpdatedUnix.AsTime() + mirrorInterval = pullMirror.Interval.String() + mirrorUpdated = pullMirror.UpdatedUnix.AsTime() } } |