Extract a new function, `get_loose_ref_cache()`, from get_loose_ref_dir(). The function returns the `ref_cache` for the loose refs of a `files_ref_store`. Signed-off-by: Michael Haggerty <mhagger@xxxxxxxxxxxx> --- refs/files-backend.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/refs/files-backend.c b/refs/files-backend.c index 0a16f6196c..fefc29433a 100644 --- a/refs/files-backend.c +++ b/refs/files-backend.c @@ -525,7 +525,7 @@ static void loose_fill_ref_dir(struct ref_store *ref_store, } } -static struct ref_dir *get_loose_ref_dir(struct files_ref_store *refs) +static struct ref_cache *get_loose_ref_cache(struct files_ref_store *refs) { if (!refs->loose) { /* @@ -545,7 +545,12 @@ static struct ref_dir *get_loose_ref_dir(struct files_ref_store *refs) add_entry_to_dir(get_ref_dir(refs->loose->root), create_dir_entry(refs->loose, "refs/", 5, 1)); } - return get_ref_dir(refs->loose->root); + return refs->loose; +} + +static struct ref_dir *get_loose_ref_dir(struct files_ref_store *refs) +{ + return get_ref_dir(get_loose_ref_cache(refs)->root); } /* -- 2.11.0