refs API: ignore errno in worktree.c's find_shared_symref()

There are only handful of callers of find_shared_symref(), none of
whom care about errno, so let's migrate to the non-errno-propagating
version of refs_resolve_ref_unsafe() and explicitly ignore errno here.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Ævar Arnfjörð Bjarmason 2021-10-16 11:39:19 +02:00 committed by Junio C Hamano
parent ccf3cc1b18
commit 0506eb71f7

View File

@ -420,6 +420,7 @@ const struct worktree *find_shared_symref(const char *symref,
const char *symref_target;
struct ref_store *refs;
int flags;
int ignore_errno;
if (wt->is_bare)
continue;
@ -436,8 +437,9 @@ const struct worktree *find_shared_symref(const char *symref,
}
refs = get_worktree_ref_store(wt);
symref_target = refs_resolve_ref_unsafe(refs, symref, 0,
NULL, &flags);
symref_target = refs_werrres_ref_unsafe(refs, symref, 0,
NULL, &flags,
&ignore_errno);
if ((flags & REF_ISSYMREF) &&
symref_target && !strcmp(symref_target, target)) {
existing = wt;