| 194 | } |
| 195 | |
| 196 | func (v *TreeBuilder) Insert(filename string, id *Oid, filemode Filemode) error { |
| 197 | cfilename := C.CString(filename) |
| 198 | defer C.free(unsafe.Pointer(cfilename)) |
| 199 | |
| 200 | runtime.LockOSThread() |
| 201 | defer runtime.UnlockOSThread() |
| 202 | |
| 203 | err := C.git_treebuilder_insert(nil, v.ptr, cfilename, id.toC(), C.git_filemode_t(filemode)) |
| 204 | runtime.KeepAlive(v) |
| 205 | runtime.KeepAlive(id) |
| 206 | if err < 0 { |
| 207 | return MakeGitError(err) |
| 208 | } |
| 209 | |
| 210 | return nil |
| 211 | } |
| 212 | |
| 213 | func (v *TreeBuilder) Remove(filename string) error { |
| 214 | cfilename := C.CString(filename) |