summaryrefslogtreecommitdiff
path: root/repository.go
diff options
context:
space:
mode:
Diffstat (limited to 'repository.go')
-rw-r--r--repository.go26
1 files changed, 7 insertions, 19 deletions
diff --git a/repository.go b/repository.go
index 8cc966c..09f5fef 100644
--- a/repository.go
+++ b/repository.go
@@ -326,8 +326,13 @@ func (v *Repository) CreateCommit(
oid := new(Oid)
- cref := C.CString(refname)
- defer C.free(unsafe.Pointer(cref))
+ var cref *C.char
+ if refname == "" {
+ cref = nil
+ } else {
+ cref = C.CString(refname)
+ defer C.free(unsafe.Pointer(cref))
+ }
cmsg := C.CString(message)
defer C.free(unsafe.Pointer(cmsg))
@@ -469,23 +474,6 @@ func (v *Repository) TreeBuilderFromTree(tree *Tree) (*TreeBuilder, error) {
return bld, nil
}
-func (v *Repository) RevparseSingle(spec string) (Object, error) {
- cspec := C.CString(spec)
- defer C.free(unsafe.Pointer(cspec))
-
- var ptr *C.git_object
-
- runtime.LockOSThread()
- defer runtime.UnlockOSThread()
-
- ecode := C.git_revparse_single(&ptr, v.ptr, cspec)
- if ecode < 0 {
- return nil, MakeGitError(ecode)
- }
-
- return allocObject(ptr, v), nil
-}
-
// EnsureLog ensures that there is a reflog for the given reference
// name and creates an empty one if necessary.
func (v *Repository) EnsureLog(name string) error {