Thread (135 messages) flat view 135 messages, 4 authors, 2021-08-23
STALE1851d

[PATCH v6? 11/17] refs API: make resolve_gitlink_ref() not set errno

From: Ævar Arnfjörð Bjarmason <hidden>
Date: 2021-07-11 16:31:01
Subsystem: the rest · Maintainer: Linus Torvalds

I have carefully read the upstream callers of resolve_gitlink_ref()
and determined that they don't care about errno. So let's move away
from the errno-setting refs_resolve_ref_unsafe() wrapper to
refs_resolve_ref_unsafe_with_errno(), and explicitly ignore the errno
it sets for us.

Signed-off-by: Ævar Arnfjörð Bjarmason <redacted>
---
 refs.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/refs.c b/refs.c
index 91320f092fb..7a9cdb1d720 100644
--- a/refs.c
+++ b/refs.c
@@ -1814,14 +1814,15 @@ int resolve_gitlink_ref(const char *submodule, const char *refname,
 {
 	struct ref_store *refs;
 	int flags;
+	int ignore_errno;
 
 	refs = get_submodule_ref_store(submodule);
 
 	if (!refs)
 		return -1;
 
-	if (!refs_resolve_ref_unsafe(refs, refname, 0, oid, &flags) ||
-	    is_null_oid(oid))
+	if (!refs_resolve_ref_unsafe_with_errno(refs, refname, 0, oid, &flags,
+		    &ignore_errno) || is_null_oid(oid))
 		return -1;
 	return 0;
 }
-- 
2.32.0-dev
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help