diff options
Diffstat (limited to 'refs/debug.c')
| -rw-r--r-- | refs/debug.c | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/refs/debug.c b/refs/debug.c index f38991c02a..c59c1728a3 100644 --- a/refs/debug.c +++ b/refs/debug.c @@ -168,9 +168,11 @@ static int debug_ref_iterator_advance(struct ref_iterator *ref_iterator) trace_printf_key(&trace_refs, "iterator_advance: (%d)\n", res); else trace_printf_key(&trace_refs, "iterator_advance: %s (0)\n", - diter->iter->ref.name); + diter->iter->refname); - diter->base.ref = diter->iter->ref; + diter->base.refname = diter->iter->refname; + diter->base.oid = diter->iter->oid; + diter->base.flags = diter->iter->flags; return res; } @@ -185,6 +187,16 @@ static int debug_ref_iterator_seek(struct ref_iterator *ref_iterator, return res; } +static int debug_ref_iterator_peel(struct ref_iterator *ref_iterator, + struct object_id *peeled) +{ + struct debug_ref_iterator *diter = + (struct debug_ref_iterator *)ref_iterator; + int res = diter->iter->vtable->peel(diter->iter, peeled); + trace_printf_key(&trace_refs, "iterator_peel: %s: %d\n", diter->iter->refname, res); + return res; +} + static void debug_ref_iterator_release(struct ref_iterator *ref_iterator) { struct debug_ref_iterator *diter = @@ -196,6 +208,7 @@ static void debug_ref_iterator_release(struct ref_iterator *ref_iterator) static struct ref_iterator_vtable debug_ref_iterator_vtable = { .advance = debug_ref_iterator_advance, .seek = debug_ref_iterator_seek, + .peel = debug_ref_iterator_peel, .release = debug_ref_iterator_release, }; |
