summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorLunny Xiao <xiaolunwen@gmail.com>2019-10-19 15:29:35 +0800
committerzeripath <art27@cantab.net>2019-10-19 08:29:35 +0100
commit22cea96c18e1746ccef1589b355b502c0fda445d (patch)
tree6f78db6ddfec2822444dd893e79aff822e85b25c /services
parent7565ac02c217272fa35450171b8759347fb046fc (diff)
downloadgitea-22cea96c18e1746ccef1589b355b502c0fda445d.tar.gz
gitea-22cea96c18e1746ccef1589b355b502c0fda445d.zip
Fix bug on pull requests when transfer head repository (#8564) (#8569)
* fix bug on pull requests when transfer head repository * add migration and fix lint * fix tests and add a cache check on LoadBaseRepo
Diffstat (limited to 'services')
-rw-r--r--services/pull/merge.go11
1 files changed, 7 insertions, 4 deletions
diff --git a/services/pull/merge.go b/services/pull/merge.go
index e83784f31e..6a1c30a63e 100644
--- a/services/pull/merge.go
+++ b/services/pull/merge.go
@@ -65,7 +65,7 @@ func Merge(pr *models.PullRequest, doer *models.User, baseGitRepo *git.Repositor
}
}()
- headRepoPath := models.RepoPath(pr.HeadUserName, pr.HeadRepo.Name)
+ headRepoPath := pr.HeadRepo.RepoPath()
if err := git.InitRepository(tmpBasePath, false); err != nil {
return fmt.Errorf("git init: %v", err)
@@ -260,14 +260,17 @@ func Merge(pr *models.PullRequest, doer *models.User, baseGitRepo *git.Repositor
}
}
- headUser, err := models.GetUserByName(pr.HeadUserName)
+ var headUser *models.User
+ err = pr.HeadRepo.GetOwner()
if err != nil {
if !models.IsErrUserNotExist(err) {
- log.Error("Can't find user: %s for head repository - %v", pr.HeadUserName, err)
+ log.Error("Can't find user: %d for head repository - %v", pr.HeadRepo.OwnerID, err)
return err
}
- log.Error("Can't find user: %s for head repository - defaulting to doer: %s - %v", pr.HeadUserName, doer.Name, err)
+ log.Error("Can't find user: %d for head repository - defaulting to doer: %s - %v", pr.HeadRepo.OwnerID, doer.Name, err)
headUser = doer
+ } else {
+ headUser = pr.HeadRepo.Owner
}
env := models.FullPushingEnvironment(