Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions integrations/pull_merge_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -246,6 +246,7 @@ func TestCantMergeConflict(t *testing.T) {
err = pull.Merge(pr, user1, gitRepo, models.MergeStyleRebase, "CONFLICT")
assert.Error(t, err, "Merge should return an error due to conflict")
assert.True(t, models.IsErrRebaseConflicts(err), "Merge error is not a conflict error")
gitRepo.Close()
})
}

Expand Down Expand Up @@ -329,5 +330,6 @@ func TestCantMergeUnrelated(t *testing.T) {
err = pull.Merge(pr, user1, gitRepo, models.MergeStyleMerge, "UNRELATED")
assert.Error(t, err, "Merge should return an error due to unrelated")
assert.True(t, models.IsErrMergeUnrelatedHistories(err), "Merge error is not a unrelated histories error")
gitRepo.Close()
})
}
3 changes: 3 additions & 0 deletions models/migrations/v156.go
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,9 @@ func fixPublisherIDforTagReleases(x *xorm.Engine) error {
return err
}
}
if gitRepo != nil {
gitRepo.Close()
}

if err := sess.Commit(); err != nil {
return err
Expand Down
5 changes: 2 additions & 3 deletions modules/lfs/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -413,9 +413,8 @@ func PutHandler(ctx *context.Context) {
}

contentStore := &ContentStore{ObjectStorage: storage.LFS}
bodyReader := ctx.Req.Body().ReadCloser()
defer bodyReader.Close()
if err := contentStore.Put(meta, bodyReader); err != nil {
defer ctx.Req.Request.Body.Close()
if err := contentStore.Put(meta, ctx.Req.Request.Body); err != nil {
// Put will log the error itself
ctx.Resp.WriteHeader(500)
if err == errSizeMismatch || err == errHashMismatch {
Expand Down
6 changes: 6 additions & 0 deletions routers/repo/lfs.go
Original file line number Diff line number Diff line change
Expand Up @@ -120,13 +120,16 @@ func LFSLocks(ctx *context.Context) {
}); err != nil {
log.Error("Failed to clone repository: %s (%v)", ctx.Repo.Repository.FullName(), err)
ctx.ServerError("LFSLocks", fmt.Errorf("Failed to clone repository: %s (%v)", ctx.Repo.Repository.FullName(), err))
return
}

gitRepo, err := git.OpenRepository(tmpBasePath)
if err != nil {
log.Error("Unable to open temporary repository: %s (%v)", tmpBasePath, err)
ctx.ServerError("LFSLocks", fmt.Errorf("Failed to open new temporary repository in: %s %v", tmpBasePath, err))
return
}
defer gitRepo.Close()

filenames := make([]string, len(lfsLocks))

Expand All @@ -137,6 +140,7 @@ func LFSLocks(ctx *context.Context) {
if err := gitRepo.ReadTreeToIndex(ctx.Repo.Repository.DefaultBranch); err != nil {
log.Error("Unable to read the default branch to the index: %s (%v)", ctx.Repo.Repository.DefaultBranch, err)
ctx.ServerError("LFSLocks", fmt.Errorf("Unable to read the default branch to the index: %s (%v)", ctx.Repo.Repository.DefaultBranch, err))
return
}

name2attribute2info, err := gitRepo.CheckAttribute(git.CheckAttributeOpts{
Expand All @@ -147,6 +151,7 @@ func LFSLocks(ctx *context.Context) {
if err != nil {
log.Error("Unable to check attributes in %s (%v)", tmpBasePath, err)
ctx.ServerError("LFSLocks", err)
return
}

lockables := make([]bool, len(lfsLocks))
Expand All @@ -166,6 +171,7 @@ func LFSLocks(ctx *context.Context) {
if err != nil {
log.Error("Unable to lsfiles in %s (%v)", tmpBasePath, err)
ctx.ServerError("LFSLocks", err)
return
}

filemap := make(map[string]bool, len(filelist))
Expand Down
4 changes: 4 additions & 0 deletions services/pull/pull.go
Original file line number Diff line number Diff line change
Expand Up @@ -670,6 +670,8 @@ func IsHeadEqualWithBranch(pr *models.PullRequest, branchName string) (bool, err
if err != nil {
return false, err
}
defer baseGitRepo.Close()

baseCommit, err := baseGitRepo.GetBranchCommit(branchName)
if err != nil {
return false, err
Expand All @@ -682,6 +684,8 @@ func IsHeadEqualWithBranch(pr *models.PullRequest, branchName string) (bool, err
if err != nil {
return false, err
}
defer headGitRepo.Close()

headCommit, err := headGitRepo.GetBranchCommit(pr.HeadBranch)
if err != nil {
return false, err
Expand Down