MCPcopy Create free account
hub / github.com/git/git / reflog_iterator_begin

Function reflog_iterator_begin

refs/files-backend.c:2399–2424  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2397};
2398
2399static struct ref_iterator *reflog_iterator_begin(struct ref_store *ref_store,
2400 const char *gitdir)
2401{
2402 struct dir_iterator *diter;
2403 struct files_reflog_iterator *iter;
2404 struct ref_iterator *ref_iterator;
2405 struct strbuf sb = STRBUF_INIT;
2406
2407 strbuf_addf(&sb, "%s/logs", gitdir);
2408
2409 diter = dir_iterator_begin(sb.buf, DIR_ITERATOR_SORTED);
2410 if (!diter) {
2411 strbuf_release(&sb);
2412 return empty_ref_iterator_begin();
2413 }
2414
2415 CALLOC_ARRAY(iter, 1);
2416 ref_iterator = &iter->base;
2417
2418 base_ref_iterator_init(ref_iterator, &files_reflog_iterator_vtable);
2419 iter->dir_iterator = diter;
2420 iter->ref_store = ref_store;
2421 strbuf_release(&sb);
2422
2423 return ref_iterator;
2424}
2425
2426static struct ref_iterator *files_reflog_iterator_begin(struct ref_store *ref_store)
2427{

Callers 1

Calls 5

strbuf_addfFunction · 0.85
dir_iterator_beginFunction · 0.85
strbuf_releaseFunction · 0.85
empty_ref_iterator_beginFunction · 0.85
base_ref_iterator_initFunction · 0.85

Tested by

no test coverage detected