diff options
| author | Patrick Steinhardt <ps@pks.im> | 2024-11-18 16:34:05 +0100 |
|---|---|---|
| committer | Junio C Hamano <gitster@pobox.com> | 2024-11-19 12:23:10 +0900 |
| commit | 6361226b79d24eb93a14e0b7d25f584269f9d5e6 (patch) | |
| tree | 0054fd0673b74df7400c6f2e6d7e3141bd679ec4 /reftable | |
| parent | 01e49941d6560dfebfac39a2ffe49d3d24b35069 (diff) | |
| download | git-6361226b79d24eb93a14e0b7d25f584269f9d5e6.tar.xz | |
reftable/stack: drop only use of `get_locked_file_path()`
We've got a single callsite where we call `get_locked_file_path()`. As
we're about to convert our usage of the lockfile subsystem to instead be
used via a compatibility shim we'd have to implement more logic for this
single callsite. While that would be okay if Git was the only supposed
user of the reftable library, it's a bit more awkward when considering
that we have to reimplement this functionality for every user of the
library eventually.
Refactor the code such that we don't call `get_locked_file_path()`
anymore.
Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'reftable')
| -rw-r--r-- | reftable/stack.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/reftable/stack.c b/reftable/stack.c index 2ac6a37151..223d7c622d 100644 --- a/reftable/stack.c +++ b/reftable/stack.c @@ -1493,9 +1493,15 @@ static int stack_compact_range(struct reftable_stack *st, */ for (i = 0; i < nlocks; i++) { struct lock_file *table_lock = &table_locks[i]; - char *table_path = get_locked_file_path(table_lock); - unlink(table_path); - reftable_free(table_path); + const char *lock_path = get_lock_file_path(table_lock); + + reftable_buf_reset(&table_name); + err = reftable_buf_add(&table_name, lock_path, + strlen(lock_path) - strlen(".lock")); + if (err) + continue; + + unlink(table_name.buf); } done: |
