builtin/repack.c: use named flags for existing_packs
We use the `util` pointer for items in the `existing_packs` string list to indicate which packs are going to be deleted. Since that has so far been the only use of that `util` pointer, we just set it to 0 or 1. But we're going to add an additional state to this field in the next patch, so prepare for that by adding a #define for the first bit so we can more expressively inspect the flags state. Signed-off-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
4571324b99
commit
72263ffc32
@ -22,6 +22,8 @@
|
|||||||
#define LOOSEN_UNREACHABLE 2
|
#define LOOSEN_UNREACHABLE 2
|
||||||
#define PACK_CRUFT 4
|
#define PACK_CRUFT 4
|
||||||
|
|
||||||
|
#define DELETE_PACK 1
|
||||||
|
|
||||||
static int pack_everything;
|
static int pack_everything;
|
||||||
static int delta_base_offset = 1;
|
static int delta_base_offset = 1;
|
||||||
static int pack_kept_objects = -1;
|
static int pack_kept_objects = -1;
|
||||||
@ -564,7 +566,7 @@ static void midx_included_packs(struct string_list *include,
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for_each_string_list_item(item, existing_nonkept_packs) {
|
for_each_string_list_item(item, existing_nonkept_packs) {
|
||||||
if (item->util)
|
if ((uintptr_t)item->util & DELETE_PACK)
|
||||||
continue;
|
continue;
|
||||||
string_list_insert(include, xstrfmt("%s.idx", item->string));
|
string_list_insert(include, xstrfmt("%s.idx", item->string));
|
||||||
}
|
}
|
||||||
@ -1002,7 +1004,8 @@ int cmd_repack(int argc, const char **argv, const char *prefix)
|
|||||||
* was given) and that we will actually delete this pack
|
* was given) and that we will actually delete this pack
|
||||||
* (if `-d` was given).
|
* (if `-d` was given).
|
||||||
*/
|
*/
|
||||||
item->util = (void*)(intptr_t)!string_list_has_string(&names, sha1);
|
if (!string_list_has_string(&names, sha1))
|
||||||
|
item->util = (void*)(uintptr_t)((size_t)item->util | DELETE_PACK);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1026,7 +1029,7 @@ int cmd_repack(int argc, const char **argv, const char *prefix)
|
|||||||
if (delete_redundant) {
|
if (delete_redundant) {
|
||||||
int opts = 0;
|
int opts = 0;
|
||||||
for_each_string_list_item(item, &existing_nonkept_packs) {
|
for_each_string_list_item(item, &existing_nonkept_packs) {
|
||||||
if (!item->util)
|
if (!((uintptr_t)item->util & DELETE_PACK))
|
||||||
continue;
|
continue;
|
||||||
remove_redundant_pack(packdir, item->string);
|
remove_redundant_pack(packdir, item->string);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user