diff options
author | Ævar Arnfjörð Bjarmason <avarab@gmail.com> | 2021-10-16 11:39:26 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2021-10-16 11:17:04 -0700 |
commit | 25a33b33424cd6c8e2c7db0f0c4b1ba01415ce38 (patch) | |
tree | ba2cf3052a24b462bd0290706e9fe7fecaa2d52e | |
parent | refs API: don't expose "errno" in run_transaction_hook() (diff) | |
download | tgif-25a33b33424cd6c8e2c7db0f0c4b1ba01415ce38.tar.xz |
refs API: post-migration API renaming [1/2]
In preceding commits all callers of refs_resolve_ref_unsafe() were
migrated to the transitory refs_werrres_ref_unsafe() function.
As a first step in getting rid of it let's remove the old function
from the public API (it went unused in a preceding commit).
We then provide both a coccinelle rule to do the rename, and a macro
to avoid breaking the existing callers.
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | contrib/coccinelle/refs.pending.cocci | 5 | ||||
-rw-r--r-- | refs.c | 15 | ||||
-rw-r--r-- | refs.h | 22 |
3 files changed, 15 insertions, 27 deletions
diff --git a/contrib/coccinelle/refs.pending.cocci b/contrib/coccinelle/refs.pending.cocci new file mode 100644 index 0000000000..b33cb8a12a --- /dev/null +++ b/contrib/coccinelle/refs.pending.cocci @@ -0,0 +1,5 @@ +@@ +expression refs, refname, resolve_flags, oid, flags, failure_errno; +@@ +- refs_werrres_ref_unsafe(refs, refname, resolve_flags, oid, flags, failure_errno) ++ refs_resolve_ref_unsafe(refs, refname, resolve_flags, oid, flags, failure_errno) @@ -1669,7 +1669,7 @@ int refs_read_raw_ref(struct ref_store *ref_store, const char *refname, type, failure_errno); } -const char *refs_werrres_ref_unsafe(struct ref_store *refs, +const char *refs_resolve_ref_unsafe(struct ref_store *refs, const char *refname, int resolve_flags, struct object_id *oid, @@ -1766,19 +1766,6 @@ const char *refs_werrres_ref_unsafe(struct ref_store *refs, return NULL; } -const char *refs_resolve_ref_unsafe(struct ref_store *refs, const char *refname, - int resolve_flags, struct object_id *oid, - int *flags) -{ - int failure_errno = 0; - const char *refn; - refn = refs_werrres_ref_unsafe(refs, refname, resolve_flags, - oid, flags, &failure_errno); - if (!refn) - errno = failure_errno; - return refn; -} - /* backend functions */ int refs_init_db(struct strbuf *err) { @@ -12,18 +12,6 @@ struct string_list_item; struct worktree; /* - * Callers should not inspect "errno" on failure, but rather pass in a - * "failure_errno" parameter, on failure the "errno" will indicate the - * type of failure encountered, but not necessarily one that came from - * a syscall. We might have faked it up. - */ -const char *refs_werrres_ref_unsafe(struct ref_store *refs, - const char *refname, - int resolve_flags, - struct object_id *oid, - int *flags, int *failure_errno); - -/* * Resolve a reference, recursively following symbolic refererences. * * Return the name of the non-symbolic reference that ultimately pointed @@ -70,16 +58,24 @@ const char *refs_werrres_ref_unsafe(struct ref_store *refs, * resolved. The function returns NULL for such ref names. * Caps and underscores refers to the special refs, such as HEAD, * FETCH_HEAD and friends, that all live outside of the refs/ directory. + * + * Callers should not inspect "errno" on failure, but rather pass in a + * "failure_errno" parameter, on failure the "errno" will indicate the + * type of failure encountered, but not necessarily one that came from + * a syscall. We might have faked it up. */ #define RESOLVE_REF_READING 0x01 #define RESOLVE_REF_NO_RECURSE 0x02 #define RESOLVE_REF_ALLOW_BAD_NAME 0x04 +#define refs_werrres_ref_unsafe(refs, refname, resolve_flags, oid, flags, failure_errno) \ + refs_resolve_ref_unsafe(refs, refname, resolve_flags, oid, flags, failure_errno) const char *refs_resolve_ref_unsafe(struct ref_store *refs, const char *refname, int resolve_flags, struct object_id *oid, - int *flags); + int *flags, int *failure_errno); + const char *resolve_ref_unsafe(const char *refname, int resolve_flags, struct object_id *oid, int *flags); |