Fix reference bug introduced with RebaseOptions implementation

This commit is contained in:
ezwiebel 2016-09-14 14:42:58 +10:00
parent adc3a4bd89
commit 03e10c5639
2 changed files with 14 additions and 1 deletions

View File

@ -84,12 +84,19 @@ func (ro *RebaseOptions) toC() *C.git_rebase_options {
version: C.uint(ro.Version), version: C.uint(ro.Version),
quiet: C.int(ro.Quiet), quiet: C.int(ro.Quiet),
inmemory: C.int(ro.InMemory), inmemory: C.int(ro.InMemory),
rewrite_notes_ref: C.CString(ro.RewriteNotesRef), rewrite_notes_ref: rewriteNotesRefToC(ro.RewriteNotesRef),
merge_options: *ro.MergeOptions.toC(), merge_options: *ro.MergeOptions.toC(),
checkout_options: *ro.CheckoutOptions.toC(), checkout_options: *ro.CheckoutOptions.toC(),
} }
} }
func rewriteNotesRefToC(ref string) *C.char {
if ref == "" {
return nil
}
return C.CString(ref)
}
// Rebase object wrapper for C pointer // Rebase object wrapper for C pointer
type Rebase struct { type Rebase struct {
ptr *C.git_rebase ptr *C.git_rebase

View File

@ -143,6 +143,12 @@ func TestRebaseNoConflicts(t *testing.T) {
err = rebase.Finish() err = rebase.Finish()
checkFatal(t, err) checkFatal(t, err)
// Check no more rebase is in progress
oRebase, err = repo.RebaseOpen(nil)
if err == nil {
t.Fatal("Did not expect to find a rebase in progress")
}
// Check history is in correct order // Check history is in correct order
actualHistory, err := commitMsgsList(repo) actualHistory, err := commitMsgsList(repo)
checkFatal(t, err) checkFatal(t, err)