From 42a02d8529953b2a964586fcb4aafe8dd7adffbc Mon Sep 17 00:00:00 2001 From: Jeff King Date: Sat, 21 Dec 2013 09:00:23 -0500 Subject: [PATCH] repack: turn exts array into array-of-struct This is slightly more verbose, but will let us annotate the extensions with further options in future commits. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano --- builtin/repack.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/builtin/repack.c b/builtin/repack.c index 2e88975e0c..a176de2f85 100644 --- a/builtin/repack.c +++ b/builtin/repack.c @@ -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; @@ -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; @@ -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); @@ -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); } -- 2.11.4.GIT