diff options
| author | Carlos Martín Nieto <[email protected]> | 2016-02-06 13:16:59 -0800 |
|---|---|---|
| committer | Carlos Martín Nieto <[email protected]> | 2016-02-06 13:16:59 -0800 |
| commit | 4a7794664e4fdce07f978f48aec9d151045bceae (patch) | |
| tree | 90e4c55f3b9bdd41ecfcee3931e95bc7ce4ffb7a /odb.go | |
| parent | 2e17c3d55f675f40303e92f001d9cacbb6f827b7 (diff) | |
| parent | 773ac24a16da6261e0f31b9354a9c890b1002422 (diff) | |
Merge pull request #288 from hanwen/readheader
Expose git_odb_read_header as Odb.ReadHeader.
Diffstat (limited to 'odb.go')
| -rw-r--r-- | odb.go | 15 |
1 files changed, 15 insertions, 0 deletions
@@ -54,6 +54,21 @@ func (v *Odb) AddBackend(backend *OdbBackend, priority int) (err error) { return nil } +func (v *Odb) ReadHeader(oid *Oid) (uint64, ObjectType, error) { + runtime.LockOSThread() + defer runtime.UnlockOSThread() + + var sz C.size_t + var cotype C.git_otype + + ret := C.git_odb_read_header(&sz, &cotype, v.ptr, oid.toC()) + if ret < 0 { + return 0, C.GIT_OBJ_BAD, MakeGitError(ret) + } + + return uint64(sz), ObjectType(cotype), nil +} + func (v *Odb) Exists(oid *Oid) bool { ret := C.git_odb_exists(v.ptr, oid.toC()) return ret != 0 |
