From d824ea415d050f5b41ce7eb680b137de653c843e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Mart=C3=ADn=20Nieto?= Date: Tue, 21 May 2013 11:51:31 +0200 Subject: [PATCH] Catch nil error instances Unfortunately libgit2 sometimes returns an error without setting an error message. Provide an alternative message instead of trying to dereference nil. --- git.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/git.go b/git.go index fdc640a..387d81e 100644 --- a/git.go +++ b/git.go @@ -10,6 +10,7 @@ import ( "bytes" "unsafe" "strings" + "fmt" ) const ( @@ -107,6 +108,9 @@ func (e GitError) Error() string{ func LastError() error { err := C.giterr_last() + if err == nil { + return &GitError{"No message", 0} + } return &GitError{C.GoString(err.message), int(err.klass)} }