Git fork

pack-bitmap: drop filter in prepare_bitmap_walk()

Now that all consumers of prepare_bitmap_walk() have populated the
'filter' member of 'struct rev_info', we can drop that extra parameter
from the method and access it directly from the 'struct rev_info'.

Signed-off-by: Derrick Stolee <derrickstolee@github.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

authored by

Derrick Stolee and committed by
Junio C Hamano
09d4a79e 7940941d

+14 -20
+1 -1
builtin/pack-objects.c
··· 3651 3651 3652 3652 static int get_object_list_from_bitmap(struct rev_info *revs) 3653 3653 { 3654 - if (!(bitmap_git = prepare_bitmap_walk(revs, &revs->filter, 0))) 3654 + if (!(bitmap_git = prepare_bitmap_walk(revs, 0))) 3655 3655 return -1; 3656 3656 3657 3657 if (pack_options_allow_reuse() &&
+3 -5
builtin/rev-list.c
··· 434 434 */ 435 435 max_count = revs->max_count; 436 436 437 - bitmap_git = prepare_bitmap_walk(revs, &revs->filter, 438 - filter_provided_objects); 437 + bitmap_git = prepare_bitmap_walk(revs, filter_provided_objects); 439 438 if (!bitmap_git) 440 439 return -1; 441 440 ··· 463 462 if (revs->max_count >= 0) 464 463 return -1; 465 464 466 - bitmap_git = prepare_bitmap_walk(revs, &revs->filter, 467 - filter_provided_objects); 465 + bitmap_git = prepare_bitmap_walk(revs, filter_provided_objects); 468 466 if (!bitmap_git) 469 467 return -1; 470 468 ··· 481 479 if (!show_disk_usage) 482 480 return -1; 483 481 484 - bitmap_git = prepare_bitmap_walk(revs, &revs->filter, filter_provided_objects); 482 + bitmap_git = prepare_bitmap_walk(revs, filter_provided_objects); 485 483 if (!bitmap_git) 486 484 return -1; 487 485
+9 -11
pack-bitmap.c
··· 739 739 static struct bitmap *find_objects(struct bitmap_index *bitmap_git, 740 740 struct rev_info *revs, 741 741 struct object_list *roots, 742 - struct bitmap *seen, 743 - struct list_objects_filter_options *filter) 742 + struct bitmap *seen) 744 743 { 745 744 struct bitmap *base = NULL; 746 745 int needs_walk = 0; ··· 823 822 show_data.bitmap_git = bitmap_git; 824 823 show_data.base = base; 825 824 826 - traverse_commit_list_filtered(filter, revs, 825 + traverse_commit_list_filtered(&revs->filter, revs, 827 826 show_commit, show_object, 828 827 &show_data, NULL); 829 828 ··· 1219 1218 } 1220 1219 1221 1220 struct bitmap_index *prepare_bitmap_walk(struct rev_info *revs, 1222 - struct list_objects_filter_options *filter, 1223 1221 int filter_provided_objects) 1224 1222 { 1225 1223 unsigned int i; ··· 1240 1238 if (revs->prune) 1241 1239 return NULL; 1242 1240 1243 - if (!can_filter_bitmap(filter)) 1241 + if (!can_filter_bitmap(&revs->filter)) 1244 1242 return NULL; 1245 1243 1246 1244 /* try to open a bitmapped pack, but don't parse it yet ··· 1297 1295 1298 1296 if (haves) { 1299 1297 revs->ignore_missing_links = 1; 1300 - haves_bitmap = find_objects(bitmap_git, revs, haves, NULL, 1301 - filter); 1298 + haves_bitmap = find_objects(bitmap_git, revs, haves, NULL); 1302 1299 reset_revision_walk(); 1303 1300 revs->ignore_missing_links = 0; 1304 1301 ··· 1306 1303 BUG("failed to perform bitmap walk"); 1307 1304 } 1308 1305 1309 - wants_bitmap = find_objects(bitmap_git, revs, wants, haves_bitmap, 1310 - filter); 1306 + wants_bitmap = find_objects(bitmap_git, revs, wants, haves_bitmap); 1311 1307 1312 1308 if (!wants_bitmap) 1313 1309 BUG("failed to perform bitmap walk"); ··· 1315 1311 if (haves_bitmap) 1316 1312 bitmap_and_not(wants_bitmap, haves_bitmap); 1317 1313 1318 - filter_bitmap(bitmap_git, (filter && filter_provided_objects) ? NULL : wants, 1319 - wants_bitmap, filter); 1314 + filter_bitmap(bitmap_git, 1315 + (revs->filter.choice && filter_provided_objects) ? NULL : wants, 1316 + wants_bitmap, 1317 + &revs->filter); 1320 1318 1321 1319 bitmap_git->result = wants_bitmap; 1322 1320 bitmap_git->haves = haves_bitmap;
-2
pack-bitmap.h
··· 10 10 struct commit; 11 11 struct repository; 12 12 struct rev_info; 13 - struct list_objects_filter_options; 14 13 15 14 static const char BITMAP_IDX_SIGNATURE[] = {'B', 'I', 'T', 'M'}; 16 15 ··· 54 53 int test_bitmap_commits(struct repository *r); 55 54 int test_bitmap_hashes(struct repository *r); 56 55 struct bitmap_index *prepare_bitmap_walk(struct rev_info *revs, 57 - struct list_objects_filter_options *filter, 58 56 int filter_provided_objects); 59 57 uint32_t midx_preferred_pack(struct bitmap_index *bitmap_git); 60 58 int reuse_partial_packfile_from_bitmap(struct bitmap_index *,
+1 -1
reachable.c
··· 205 205 cp.progress = progress; 206 206 cp.count = 0; 207 207 208 - bitmap_git = prepare_bitmap_walk(revs, NULL, 0); 208 + bitmap_git = prepare_bitmap_walk(revs, 0); 209 209 if (bitmap_git) { 210 210 traverse_bitmap_commit_list(bitmap_git, revs, mark_object_seen); 211 211 free_bitmap_index(bitmap_git);