refs API: make loose_fill_ref_dir() not set errno
Change the refs_resolve_ref_unsafe() invoked in loose_fill_ref_dir() to a form that ignores errno. The only eventual caller of this function is create_ref_cache(), whose callers in turn don't have their failure depend on any errno set here. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Ævar Arnfjörð Bjarmason committed
Oct 16, 2021 at 11:39 UTC
096a7fbb97dc4015c97b1811aab4e08e2f0ac724
1 file changed
+3
-2
refs/files-backend.c
+3
-2
@@ -280,10 +280,11 @@ static void loose_fill_ref_dir(struct ref_store *ref_store,
280
create_dir_entry(dir->cache, refname.buf,
281
refname.len));
282
} else {
283
- if (!refs_resolve_ref_unsafe(&refs->base,
283
+ int ignore_errno;
284
+ if (!refs_werrres_ref_unsafe(&refs->base,
285
refname.buf,
286
RESOLVE_REF_READING,
286
- &oid, &flag)) {
287
+ &oid, &flag, &ignore_errno)) {
288
oidclr(&oid);
289
flag |= REF_ISBROKEN;
290
} else if (is_null_oid(&oid)) {