aboutsummaryrefslogtreecommitdiff
path: root/builtin-pack-objects.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2009-02-27 23:43:37 -0800
committerJunio C Hamano <gitster@pobox.com>2009-02-28 01:06:06 -0800
commit386cb77210cdb09cd808698d21d0e796cd77f26f (patch)
tree0a8460ca2365d52c864cec23cb17a2ffb31ba577 /builtin-pack-objects.c
parentb8431b033f9e60f87a75b864612873307a3e5966 (diff)
downloadgit-386cb77210cdb09cd808698d21d0e796cd77f26f.tar.gz
git-386cb77210cdb09cd808698d21d0e796cd77f26f.tar.xz
Consolidate ignore_packed logic more
This refactors three loops that check if a given packfile is on the ignore_packed list into a function is_kept_pack(). The function returns false for a pack on the list, and true for a pack not on the list, because this list is solely used by "git repack" to pass list of packfiles that do not have corresponding .keep files, i.e. a packfile not on the list is "kept". Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin-pack-objects.c')
-rw-r--r--builtin-pack-objects.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/builtin-pack-objects.c b/builtin-pack-objects.c
index fb5e14d56..7e7719b83 100644
--- a/builtin-pack-objects.c
+++ b/builtin-pack-objects.c
@@ -1915,11 +1915,7 @@ static void add_objects_in_unpacked_packs(struct rev_info *revs)
const unsigned char *sha1;
struct object *o;
- for (i = 0; i < revs->num_ignore_packed; i++) {
- if (matches_pack_name(p, revs->ignore_packed[i]))
- break;
- }
- if (revs->num_ignore_packed <= i)
+ if (is_kept_pack(p, revs))
continue;
if (open_pack_index(p))
die("cannot open pack index");
@@ -1955,11 +1951,7 @@ static void loosen_unused_packed_objects(struct rev_info *revs)
const unsigned char *sha1;
for (p = packed_git; p; p = p->next) {
- for (i = 0; i < revs->num_ignore_packed; i++) {
- if (matches_pack_name(p, revs->ignore_packed[i]))
- break;
- }
- if (revs->num_ignore_packed <= i)
+ if (is_kept_pack(p, revs))
continue;
if (open_pack_index(p))