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 <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
b328c2166e
commit
42a02d8529
@ -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)
|
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 child_process cmd;
|
||||||
struct string_list_item *item;
|
struct string_list_item *item;
|
||||||
struct argv_array cmd_args = ARGV_ARRAY_INIT;
|
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++) {
|
for (ext = 0; ext < ARRAY_SIZE(exts); ext++) {
|
||||||
char *fname, *fname_old;
|
char *fname, *fname_old;
|
||||||
fname = mkpathdup("%s/%s%s", packdir,
|
fname = mkpathdup("%s/%s%s", packdir,
|
||||||
item->string, exts[ext]);
|
item->string, exts[ext].name);
|
||||||
if (!file_exists(fname)) {
|
if (!file_exists(fname)) {
|
||||||
free(fname);
|
free(fname);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
fname_old = mkpath("%s/old-%s%s", packdir,
|
fname_old = mkpath("%s/old-%s%s", packdir,
|
||||||
item->string, exts[ext]);
|
item->string, exts[ext].name);
|
||||||
if (file_exists(fname_old))
|
if (file_exists(fname_old))
|
||||||
if (unlink(fname_old))
|
if (unlink(fname_old))
|
||||||
failed = 1;
|
failed = 1;
|
||||||
@ -319,9 +324,9 @@ int cmd_repack(int argc, const char **argv, const char *prefix)
|
|||||||
char *fname, *fname_old;
|
char *fname, *fname_old;
|
||||||
struct stat statbuffer;
|
struct stat statbuffer;
|
||||||
fname = mkpathdup("%s/pack-%s%s",
|
fname = mkpathdup("%s/pack-%s%s",
|
||||||
packdir, item->string, exts[ext]);
|
packdir, item->string, exts[ext].name);
|
||||||
fname_old = mkpathdup("%s-%s%s",
|
fname_old = mkpathdup("%s-%s%s",
|
||||||
packtmp, item->string, exts[ext]);
|
packtmp, item->string, exts[ext].name);
|
||||||
if (!stat(fname_old, &statbuffer)) {
|
if (!stat(fname_old, &statbuffer)) {
|
||||||
statbuffer.st_mode &= ~(S_IWUSR | S_IWGRP | S_IWOTH);
|
statbuffer.st_mode &= ~(S_IWUSR | S_IWGRP | S_IWOTH);
|
||||||
chmod(fname_old, statbuffer.st_mode);
|
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",
|
fname = mkpath("%s/old-pack-%s%s",
|
||||||
packdir,
|
packdir,
|
||||||
item->string,
|
item->string,
|
||||||
exts[ext]);
|
exts[ext].name);
|
||||||
if (remove_path(fname))
|
if (remove_path(fname))
|
||||||
warning(_("removing '%s' failed"), fname);
|
warning(_("removing '%s' failed"), fname);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user