aboutsummaryrefslogtreecommitdiff
path: root/internal/db/user.go
diff options
context:
space:
mode:
authorGuy Smoilov <611655+guysmoilov@users.noreply.github.com>2019-11-03 21:07:40 +0200
committerUnknwon <u@gogs.io>2019-11-03 11:07:40 -0800
commitb40b85e006d0e3858b423e36d437de73cd08d00a (patch)
tree327419bd2483e41c6d39dcd771fb3f0af2570c50 /internal/db/user.go
parent97772f406d339533a5d4d735946ff0d65b72ea1b (diff)
repo: delete local copies on owner name change (#5843)
* Protect local repo copy deletion with repoWorkingPool, and delete the local copy on owner name change. * Update internal/db/user.go Co-Authored-By: Unknwon <u@gogs.io> * Error format on local repo and wiki deletion
Diffstat (limited to 'internal/db/user.go')
-rw-r--r--internal/db/user.go6
1 files changed, 4 insertions, 2 deletions
diff --git a/internal/db/user.go b/internal/db/user.go
index 3318a4be..003e2efd 100644
--- a/internal/db/user.go
+++ b/internal/db/user.go
@@ -667,13 +667,15 @@ func ChangeUserName(u *User, newUserName string) (err error) {
return fmt.Errorf("ChangeUsernameInPullRequests: %v", err)
}
- // Delete all local copies of repository wiki that user owns.
+ // Delete all local copies of repositories and wikis the user owns.
if err = x.Where("owner_id=?", u.ID).Iterate(new(Repository), func(idx int, bean interface{}) error {
repo := bean.(*Repository)
+ deleteRepoLocalCopy(repo)
+ // TODO: By the same reasoning, shouldn't we also sync access to the local wiki path?
RemoveAllWithNotice("Delete repository wiki local copy", repo.LocalWikiPath())
return nil
}); err != nil {
- return fmt.Errorf("Delete repository wiki local copy: %v", err)
+ return fmt.Errorf("delete repository and wiki local copy: %v", err)
}
// Rename or create user base directory