From 1cdf1d70a2c08b1b87611be11cb448075ea45f2b Mon Sep 17 00:00:00 2001 From: FUJII Ryota Date: Wed, 16 Dec 2015 16:37:50 +0900 Subject: [PATCH] Fix a memory leak in Index.EntryByPath() --- index.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/index.go b/index.go index 1875e32..8417b65 100644 --- a/index.go +++ b/index.go @@ -350,10 +350,13 @@ func (v *Index) EntryByIndex(index uint) (*IndexEntry, error) { } func (v *Index) EntryByPath(path string, stage int) (*IndexEntry, error) { + cpath := C.CString(path) + defer C.free(unsafe.Pointer(cpath)) + runtime.LockOSThread() defer runtime.UnlockOSThread() - centry := C.git_index_get_bypath(v.ptr, C.CString(path), C.int(stage)) + centry := C.git_index_get_bypath(v.ptr, cpath, C.int(stage)) if centry == nil { return nil, MakeGitError(C.GIT_ENOTFOUND) } -- 2.45.2