Re: [PATCH v2 0/4] add ref content check for files backend
From: Junio C Hamano <hidden>
Date: 2024-08-28 21:28:53
Here is another one.
By the way, Peff, do we have MAYBE_UNUSED that can be used in a case
like this one? Platforms without symbolic links supported may well
define NO_SYMLINK_HEAD, which makes the incoming parameters unused.
static int create_ref_symlink(struct ref_lock *lock, const char *target)
{
int ret = -1;
#ifndef NO_SYMLINK_HEAD
char *ref_path = get_locked_file_path(&lock->lk);
unlink(ref_path);
ret = symlink(target, ref_path);
free(ref_path);
if (ret)
fprintf(stderr, "no symlink - falling back to symbolic ref\n");
#endif
return ret;
}
We can of course do the attached, which I'll let shejialuo to squash
into an appropriate patch in the series.
Thanks.
refs/files-backend.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git c/refs/files-backend.c w/refs/files-backend.c
index 69dd283c9d..110af32788 100644
--- c/refs/files-backend.c
+++ w/refs/files-backend.c@@ -1951,10 +1951,13 @@ static int commit_ref_update(struct files_ref_store *refs, return 0; } +#ifdef NO_SYMLINK_HEAD +#define create_ref_symlink(lock, referent) (-1) +#else static int create_ref_symlink(struct ref_lock *lock, const char *target) { int ret = -1; -#ifndef NO_SYMLINK_HEAD + char *ref_path = get_locked_file_path(&lock->lk); unlink(ref_path); ret = symlink(target, ref_path);
@@ -1962,9 +1965,9 @@ static int create_ref_symlink(struct ref_lock *lock, const char *target) if (ret) fprintf(stderr, "no symlink - falling back to symbolic ref\n"); -#endif return ret; } +#endif static int create_symref_lock(struct ref_lock *lock, const char *target, struct strbuf *err)