Ensure libgit2 resources are released

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
This commit is contained in:
Paulo Gomes 2022-03-08 15:42:53 +00:00 committed by Hidde Beydals
parent c79d68937f
commit 4d8ebe69a0
1 changed files with 5 additions and 2 deletions

View File

@ -544,7 +544,8 @@ func switchBranch(repo *libgit2.Repository, pushBranch string) error {
} }
defer head.Free() defer head.Free()
_, err = repo.CreateBranch(pushBranch, head, false) branch, err := repo.CreateBranch(pushBranch, head, false)
defer branch.Free()
return err return err
} }
@ -652,6 +653,7 @@ func commitChangedManifests(tracelog logr.Logger, repo *libgit2.Repository, absR
if err != nil { if err != nil {
return "", err return "", err
} }
defer commit.Free()
signedCommitID, err := commit.WithSignatureUsing(func(commitContent string) (string, string, error) { signedCommitID, err := commit.WithSignatureUsing(func(commitContent string) (string, string, error) {
cipherText := new(bytes.Buffer) cipherText := new(bytes.Buffer)
@ -677,7 +679,7 @@ func commitChangedManifests(tracelog logr.Logger, repo *libgit2.Repository, absR
} }
defer newHead.Free() defer newHead.Free()
_, err = repo.References.Create( ref, err := repo.References.Create(
newHead.Name(), newHead.Name(),
signedCommit.Id(), signedCommit.Id(),
true, true,
@ -686,6 +688,7 @@ func commitChangedManifests(tracelog logr.Logger, repo *libgit2.Repository, absR
if err != nil { if err != nil {
return "", err return "", err
} }
defer ref.Free()
return signedCommitID.String(), nil return signedCommitID.String(), nil
} }