The 1/3 here fixes the bug Han-Wen pointed out in[1]. As discussed there it's obviously bad in the pre-image, but some oddities in refs_resolve_ref_unsafe() interacts with code it calls ended mostly plastering over the differences by accident, so it wasn't caught by testing. Then 2/3 makes the one external user of that "failure_errno" stop using it, and 3/3 removes it entirely from the API interface. 1. https://lore.kernel.org/git/CAFQ2z_NHXKss4LVBAFVpE7LFXt2OeOz9P9wi-z8riwHXWDb28w@xxxxxxxxxxxxxx/ Ævar Arnfjörð Bjarmason (3): refs API: use "failure_errno", not "errno" sequencer: don't use die_errno() on refs_resolve_ref_unsafe() failure refs API: remove "failure_errno" from refs_resolve_ref_unsafe() refs.c | 53 +++++++++++++-------------------------- refs.h | 7 +----- refs/files-backend.c | 34 ++++++++----------------- sequencer.c | 10 +++----- t/helper/test-ref-store.c | 3 +-- worktree.c | 11 +++----- 6 files changed, 35 insertions(+), 83 deletions(-) -- 2.34.1.930.g218b4aae189