track adds the given pointer to the list of pointers to track and returns a pointer value which can be passed to C as an opaque pointer.
(remote *Remote)
| 214 | // returns a pointer value which can be passed to C as an opaque |
| 215 | // pointer. |
| 216 | func (v *remotePointerList) track(remote *Remote) { |
| 217 | v.Lock() |
| 218 | v.pointers[remote.ptr] = remote |
| 219 | v.Unlock() |
| 220 | |
| 221 | runtime.SetFinalizer(remote, (*Remote).Free) |
| 222 | } |
| 223 | |
| 224 | // untrack stops tracking the git_remote pointer. |
| 225 | func (v *remotePointerList) untrack(remote *Remote) { |