Skip to content

Commit

Permalink
repack: turn exts array into array-of-struct
Browse files Browse the repository at this point in the history
This is slightly more verbose, but will let us annotate the
extensions with further options in future commits.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Jeff King authored and Junio C Hamano committed Dec 30, 2013
1 parent b328c21 commit 42a02d8
Showing 1 changed file with 11 additions and 6 deletions.
17 changes: 11 additions & 6 deletions builtin/repack.c
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,12 @@ static void remove_redundant_pack(const char *dir_name, const char *base_name)

int cmd_repack(int argc, const char **argv, const char *prefix)
{
const char *exts[] = {".pack", ".idx"};
struct {
const char *name;
} exts[] = {
{".pack"},
{".idx"},
};
struct child_process cmd;
struct string_list_item *item;
struct argv_array cmd_args = ARGV_ARRAY_INIT;
Expand Down Expand Up @@ -261,14 +266,14 @@ int cmd_repack(int argc, const char **argv, const char *prefix)
for (ext = 0; ext < ARRAY_SIZE(exts); ext++) {
char *fname, *fname_old;
fname = mkpathdup("%s/%s%s", packdir,
item->string, exts[ext]);
item->string, exts[ext].name);
if (!file_exists(fname)) {
free(fname);
continue;
}

fname_old = mkpath("%s/old-%s%s", packdir,
item->string, exts[ext]);
item->string, exts[ext].name);
if (file_exists(fname_old))
if (unlink(fname_old))
failed = 1;
Expand Down Expand Up @@ -319,9 +324,9 @@ int cmd_repack(int argc, const char **argv, const char *prefix)
char *fname, *fname_old;
struct stat statbuffer;
fname = mkpathdup("%s/pack-%s%s",
packdir, item->string, exts[ext]);
packdir, item->string, exts[ext].name);
fname_old = mkpathdup("%s-%s%s",
packtmp, item->string, exts[ext]);
packtmp, item->string, exts[ext].name);
if (!stat(fname_old, &statbuffer)) {
statbuffer.st_mode &= ~(S_IWUSR | S_IWGRP | S_IWOTH);
chmod(fname_old, statbuffer.st_mode);
Expand All @@ -340,7 +345,7 @@ int cmd_repack(int argc, const char **argv, const char *prefix)
fname = mkpath("%s/old-pack-%s%s",
packdir,
item->string,
exts[ext]);
exts[ext].name);
if (remove_path(fname))
warning(_("removing '%s' failed"), fname);
}
Expand Down

0 comments on commit 42a02d8

Please sign in to comment.