summaryrefslogtreecommitdiff
path: root/reset.go
diff options
context:
space:
mode:
Diffstat (limited to 'reset.go')
-rw-r--r--reset.go9
1 files changed, 8 insertions, 1 deletions
diff --git a/reset.go b/reset.go
index b3ecff4..155b58b 100644
--- a/reset.go
+++ b/reset.go
@@ -17,8 +17,15 @@ const (
func (r *Repository) ResetToCommit(commit *Commit, resetType ResetType, opts *CheckoutOptions) error {
runtime.LockOSThread()
defer runtime.UnlockOSThread()
- ret := C.git_reset(r.ptr, commit.ptr, C.git_reset_t(resetType), opts.toC())
+ var err error
+ cOpts := opts.toC(&err)
+ defer freeCheckoutOptions(cOpts)
+
+ ret := C.git_reset(r.ptr, commit.ptr, C.git_reset_t(resetType), cOpts)
+ if ret == C.int(ErrorCodeUser) && err != nil {
+ return err
+ }
if ret < 0 {
return MakeGitError(ret)
}