Skip to content

Commit e61c6cd

Browse files
lunnytechknowlogick
authored andcommitted
fix data race on migrate repository (#5224)
1 parent 0ba5794 commit e61c6cd

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

models/repo.go

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1043,7 +1043,6 @@ func MigrateRepository(doer, u *User, opts MigrateRepoOptions) (*Repository, err
10431043
if err = SyncReleasesWithTags(repo, gitRepo); err != nil {
10441044
log.Error(4, "Failed to synchronize tags to releases for repository: %v", err)
10451045
}
1046-
UpdateRepoIndexer(repo)
10471046
}
10481047

10491048
if err = repo.UpdateSize(); err != nil {
@@ -1061,10 +1060,16 @@ func MigrateRepository(doer, u *User, opts MigrateRepoOptions) (*Repository, err
10611060
}
10621061

10631062
repo.IsMirror = true
1064-
return repo, UpdateRepository(repo, false)
1063+
err = UpdateRepository(repo, false)
1064+
} else {
1065+
repo, err = CleanUpMigrateInfo(repo)
1066+
}
1067+
1068+
if err != nil && !repo.IsBare {
1069+
UpdateRepoIndexer(repo)
10651070
}
10661071

1067-
return CleanUpMigrateInfo(repo)
1072+
return repo, err
10681073
}
10691074

10701075
// cleanUpMigrateGitConfig removes mirror info which prevents "push --all".

0 commit comments

Comments
 (0)