summaryrefslogtreecommitdiff
path: root/reference.go
diff options
context:
space:
mode:
Diffstat (limited to 'reference.go')
-rw-r--r--reference.go9
1 files changed, 6 insertions, 3 deletions
diff --git a/reference.go b/reference.go
index e10c9b2..12ecb74 100644
--- a/reference.go
+++ b/reference.go
@@ -301,7 +301,7 @@ func (v *Reference) Owner() *Repository {
}
}
-// Cmp compares both references, retursn 0 on equality, otherwise a
+// Cmp compares v to ref2. It returns 0 on equality, otherwise a
// stable sorting.
func (v *Reference) Cmp(ref2 *Reference) int {
ret := int(C.git_reference_cmp(v.ptr, ref2.ptr))
@@ -310,13 +310,14 @@ func (v *Reference) Cmp(ref2 *Reference) int {
return ret
}
-// Shorthand ret :=s a "human-readable" short reference name
+// Shorthand returns a "human-readable" short reference name.
func (v *Reference) Shorthand() string {
ret := C.GoString(C.git_reference_shorthand(v.ptr))
runtime.KeepAlive(v)
return ret
}
+// Name returns the full name of v.
func (v *Reference) Name() string {
ret := C.GoString(C.git_reference_name(v.ptr))
runtime.KeepAlive(v)
@@ -455,10 +456,12 @@ func (v *ReferenceIterator) Next() (*Reference, error) {
}
func newReferenceIteratorFromC(ptr *C.git_reference_iterator, r *Repository) *ReferenceIterator {
- return &ReferenceIterator{
+ iter := &ReferenceIterator{
ptr: ptr,
repo: r,
}
+ runtime.SetFinalizer(iter, (*ReferenceIterator).Free)
+ return iter
}
// Free the reference iterator