summaryrefslogtreecommitdiff
path: root/repository.go
diff options
context:
space:
mode:
Diffstat (limited to 'repository.go')
-rw-r--r--repository.go55
1 files changed, 44 insertions, 11 deletions
diff --git a/repository.go b/repository.go
index cbb5d17..7fac277 100644
--- a/repository.go
+++ b/repository.go
@@ -210,7 +210,10 @@ func (v *Repository) SetHead(refname string, sig *Signature, msg string) error {
cname := C.CString(refname)
defer C.free(unsafe.Pointer(cname))
- csig := sig.toC()
+ csig, err := sig.toC()
+ if err != nil {
+ return err
+ }
defer C.free(unsafe.Pointer(csig))
var cmsg *C.char
@@ -230,7 +233,10 @@ func (v *Repository) SetHead(refname string, sig *Signature, msg string) error {
}
func (v *Repository) SetHeadDetached(id *Oid, sig *Signature, msg string) error {
- csig := sig.toC()
+ csig, err := sig.toC()
+ if err != nil {
+ return err
+ }
defer C.free(unsafe.Pointer(csig))
var cmsg *C.char
@@ -253,7 +259,10 @@ func (v *Repository) CreateReference(name string, id *Oid, force bool, sig *Sign
cname := C.CString(name)
defer C.free(unsafe.Pointer(cname))
- csig := sig.toC()
+ csig, err := sig.toC()
+ if err != nil {
+ return nil, err
+ }
defer C.free(unsafe.Pointer(csig))
var cmsg *C.char
@@ -284,7 +293,10 @@ func (v *Repository) CreateSymbolicReference(name, target string, force bool, si
ctarget := C.CString(target)
defer C.free(unsafe.Pointer(ctarget))
- csig := sig.toC()
+ csig, err := sig.toC()
+ if err != nil {
+ return nil, err
+ }
defer C.free(unsafe.Pointer(csig))
var cmsg *C.char
@@ -352,10 +364,16 @@ func (v *Repository) CreateCommit(
parentsarg = &cparents[0]
}
- authorSig := author.toC()
+ authorSig, err := author.toC()
+ if err != nil {
+ return nil, err
+ }
defer C.git_signature_free(authorSig)
- committerSig := committer.toC()
+ committerSig, err := committer.toC()
+ if err != nil {
+ return nil, err
+ }
defer C.git_signature_free(committerSig)
runtime.LockOSThread()
@@ -384,7 +402,10 @@ func (v *Repository) CreateTag(
cmessage := C.CString(message)
defer C.free(unsafe.Pointer(cmessage))
- taggerSig := tagger.toC()
+ taggerSig, err := tagger.toC()
+ if err != nil {
+ return nil, err
+ }
defer C.git_signature_free(taggerSig)
ctarget := commit.gitObject.ptr
@@ -546,10 +567,16 @@ func (v *Repository) CreateNote(
defer C.free(unsafe.Pointer(cref))
}
- authorSig := author.toC()
+ authorSig, err := author.toC()
+ if err != nil {
+ return nil, err
+ }
defer C.git_signature_free(authorSig)
- committerSig := committer.toC()
+ committerSig, err := committer.toC()
+ if err != nil {
+ return nil, err
+ }
defer C.git_signature_free(committerSig)
cnote := C.CString(note)
@@ -601,10 +628,16 @@ func (v *Repository) RemoveNote(ref string, author, committer *Signature, id *Oi
defer C.free(unsafe.Pointer(cref))
}
- authorSig := author.toC()
+ authorSig, err := author.toC()
+ if err != nil {
+ return err
+ }
defer C.git_signature_free(authorSig)
- committerSig := committer.toC()
+ committerSig, err := committer.toC()
+ if err != nil {
+ return err
+ }
defer C.git_signature_free(committerSig)
runtime.LockOSThread()