summaryrefslogtreecommitdiff
path: root/refdb.go
diff options
context:
space:
mode:
Diffstat (limited to 'refdb.go')
-rw-r--r--refdb.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/refdb.go b/refdb.go
index 46fbb63..36e2f0a 100644
--- a/refdb.go
+++ b/refdb.go
@@ -23,6 +23,9 @@ type RefdbBackend struct {
func (v *Repository) NewRefdb() (refdb *Refdb, err error) {
refdb = new(Refdb)
+ runtime.LockOSThread()
+ defer runtime.UnlockOSThread()
+
ret := C.git_refdb_new(&refdb.ptr, v.ptr)
if ret < 0 {
return nil, MakeGitError(ret)
@@ -38,6 +41,9 @@ func NewRefdbBackendFromC(ptr *C.git_refdb_backend) (backend *RefdbBackend) {
}
func (v *Refdb) SetBackend(backend *RefdbBackend) (err error) {
+ runtime.LockOSThread()
+ defer runtime.UnlockOSThread()
+
ret := C.git_refdb_set_backend(v.ptr, backend.ptr)
if ret < 0 {
backend.Free()