Signed-off-by: Nicolas Pitre <nico@xxxxxxxxxxx> --- packv4-create.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packv4-create.c b/packv4-create.c index c23c791..fd16222 100644 --- a/packv4-create.c +++ b/packv4-create.c @@ -13,6 +13,7 @@ #include "tree-walk.h" #include "pack.h" #include "pack-revindex.h" +#include "progress.h" #include "varint.h" @@ -627,8 +628,10 @@ static struct pack_idx_entry **sort_objs_by_offset(struct pack_idx_entry *list, static int create_pack_dictionaries(struct packed_git *p, struct pack_idx_entry **obj_list) { + struct progress *progress_state; unsigned int i; + progress_state = start_progress("Scanning objects", p->num_objects); for (i = 0; i < p->num_objects; i++) { struct pack_idx_entry *obj = obj_list[i]; void *data; @@ -637,6 +640,8 @@ static int create_pack_dictionaries(struct packed_git *p, struct object_info oi = {}; int (*add_dict_entries)(void *, unsigned long); + display_progress(progress_state, i+1); + oi.typep = &type; oi.sizep = &size; if (packed_object_info(p, obj->offset, &oi) < 0) @@ -666,6 +671,7 @@ static int create_pack_dictionaries(struct packed_git *p, free(data); } + stop_progress(&progress_state); return 0; } @@ -1009,6 +1015,7 @@ static void process_one_pack(char *src_pack, char *dst_pack) off_t written = 0; char *packname; unsigned char pack_sha1[20]; + struct progress *progress_state; p = open_pack(src_pack); if (!p) @@ -1030,6 +1037,7 @@ static void process_one_pack(char *src_pack, char *dst_pack) written += packv4_write_tables(f, nr_objects, objs); /* Let's write objects out, updating the object index list in place */ + progress_state = start_progress("Writing objects", nr_objects); all_objs = objs; all_objs_nr = nr_objects; for (i = 0; i < nr_objects; i++) { @@ -1039,7 +1047,9 @@ static void process_one_pack(char *src_pack, char *dst_pack) written += packv4_write_object(f, p, obj); obj->offset = obj_pos; obj->crc32 = crc32_end(f); + display_progress(progress_state, i+1); } + stop_progress(&progress_state); sha1close(f, pack_sha1, CSUM_CLOSE | CSUM_FSYNC); -- 1.8.4.38.g317e65b -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html