diff options
author | Christian Couder <christian.couder@gmail.com> | 2023-10-02 16:54:59 (GMT) |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2023-10-02 21:54:30 (GMT) |
commit | be315e9a3fe070af60821f01c2bc508457d2c1b2 (patch) | |
tree | fba1527b503ab7f1766620e86333f9b1b680ec64 /builtin/repack.c | |
parent | ff8504e4ec5628edddb67f989256b7f2aea6c45d (diff) | |
download | git-be315e9a3fe070af60821f01c2bc508457d2c1b2.zip git-be315e9a3fe070af60821f01c2bc508457d2c1b2.tar.gz git-be315e9a3fe070af60821f01c2bc508457d2c1b2.tar.bz2 |
repack: refactor finding pack prefix
Create a new find_pack_prefix() to refactor code that handles finding
the pack prefix from the packtmp and packdir global variables, as we are
going to need this feature again in following commit.
Signed-off-by: Christian Couder <chriscool@tuxfamily.org
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/repack.c')
-rw-r--r-- | builtin/repack.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/builtin/repack.c b/builtin/repack.c index d0ab55c..9ef0044 100644 --- a/builtin/repack.c +++ b/builtin/repack.c @@ -893,6 +893,17 @@ static int write_cruft_pack(const struct pack_objects_args *args, return finish_pack_objects_cmd(&cmd, names, local); } +static const char *find_pack_prefix(const char *packdir, const char *packtmp) +{ + const char *pack_prefix; + if (!skip_prefix(packtmp, packdir, &pack_prefix)) + die(_("pack prefix %s does not begin with objdir %s"), + packtmp, packdir); + if (*pack_prefix == '/') + pack_prefix++; + return pack_prefix; +} + int cmd_repack(int argc, const char **argv, const char *prefix) { struct child_process cmd = CHILD_PROCESS_INIT; @@ -1139,12 +1150,7 @@ int cmd_repack(int argc, const char **argv, const char *prefix) printf_ln(_("Nothing new to pack.")); if (pack_everything & PACK_CRUFT) { - const char *pack_prefix; - if (!skip_prefix(packtmp, packdir, &pack_prefix)) - die(_("pack prefix %s does not begin with objdir %s"), - packtmp, packdir); - if (*pack_prefix == '/') - pack_prefix++; + const char *pack_prefix = find_pack_prefix(packdir, packtmp); if (!cruft_po_args.window) cruft_po_args.window = po_args.window; |