Skip to content

Commit

Permalink
relax usage of the progress API
Browse files Browse the repository at this point in the history
Since it is now OK to pass a null pointer to display_progress() and
stop_progress() resulting in a no-op, then we can simplify the code
and remove a bunch of lines by not making those calls conditional all
the time.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Nicolas Pitre authored and gitster committed Oct 30, 2007
1 parent dc6a075 commit 4d4fcc5
Show file tree
Hide file tree
Showing 5 changed files with 20 additions and 38 deletions.
18 changes: 6 additions & 12 deletions builtin-pack-objects.c
Original file line number Diff line number Diff line change
Expand Up @@ -629,8 +629,7 @@ static void write_pack_file(void)
if (!offset_one)
break;
offset = offset_one;
if (do_progress)
display_progress(progress_state, written);
display_progress(progress_state, written);
}

/*
Expand Down Expand Up @@ -684,8 +683,7 @@ static void write_pack_file(void)
} while (nr_remaining && i < nr_objects);

free(written_list);
if (do_progress)
stop_progress(&progress_state);
stop_progress(&progress_state);
if (written != nr_result)
die("wrote %u objects while expecting %u", written, nr_result);
/*
Expand Down Expand Up @@ -853,8 +851,7 @@ static int add_object_entry(const unsigned char *sha1, enum object_type type,
else
object_ix[-1 - ix] = nr_objects;

if (progress)
display_progress(progress_state, nr_objects);
display_progress(progress_state, nr_objects);

if (name && no_try_delta(name))
entry->no_try_delta = 1;
Expand Down Expand Up @@ -1517,8 +1514,7 @@ static void find_deltas(struct object_entry **list, unsigned list_size,

progress_lock();
(*processed)++;
if (progress)
display_progress(progress_state, *processed);
display_progress(progress_state, *processed);
progress_unlock();

/*
Expand Down Expand Up @@ -1722,8 +1718,7 @@ static void prepare_pack(int window, int depth)
nr_deltas);
qsort(delta_list, n, sizeof(*delta_list), type_size_sort);
ll_find_deltas(delta_list, n, window+1, depth, &nr_done);
if (progress)
stop_progress(&progress_state);
stop_progress(&progress_state);
if (nr_done != nr_deltas)
die("inconsistency with delta count");
}
Expand Down Expand Up @@ -2142,8 +2137,7 @@ int cmd_pack_objects(int argc, const char **argv, const char *prefix)
rp_av[rp_ac] = NULL;
get_object_list(rp_ac, rp_av);
}
if (progress)
stop_progress(&progress_state);
stop_progress(&progress_state);

if (non_empty && !nr_result)
return 0;
Expand Down
6 changes: 2 additions & 4 deletions builtin-prune-packed.c
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,7 @@ static void prune_dir(int i, DIR *dir, char *pathname, int len, int opts)
struct dirent *de;
char hex[40];

if (opts == VERBOSE)
display_progress(progress, i + 1);
display_progress(progress, i + 1);

sprintf(hex, "%02x", i);
while ((de = readdir(dir)) != NULL) {
Expand Down Expand Up @@ -64,8 +63,7 @@ void prune_packed_objects(int opts)
prune_dir(i, d, pathname, len + 3, opts);
closedir(d);
}
if (opts == VERBOSE)
stop_progress(&progress);
stop_progress(&progress);
}

int cmd_prune_packed(int argc, const char **argv, const char *prefix)
Expand Down
6 changes: 2 additions & 4 deletions builtin-unpack-objects.c
Original file line number Diff line number Diff line change
Expand Up @@ -326,11 +326,9 @@ static void unpack_all(void)
obj_list = xmalloc(nr_objects * sizeof(*obj_list));
for (i = 0; i < nr_objects; i++) {
unpack_one(i);
if (!quiet)
display_progress(progress, i + 1);
display_progress(progress, i + 1);
}
if (!quiet)
stop_progress(&progress);
stop_progress(&progress);

if (delta_list)
die("unresolved deltas left after unpacking");
Expand Down
20 changes: 7 additions & 13 deletions index-pack.c
Original file line number Diff line number Diff line change
Expand Up @@ -418,12 +418,10 @@ static void parse_pack_objects(unsigned char *sha1)
} else
sha1_object(data, obj->size, obj->type, obj->idx.sha1);
free(data);
if (verbose)
display_progress(progress, i+1);
display_progress(progress, i+1);
}
objects[i].idx.offset = consumed_bytes;
if (verbose)
stop_progress(&progress);
stop_progress(&progress);

/* Check pack integrity */
flush();
Expand Down Expand Up @@ -486,8 +484,7 @@ static void parse_pack_objects(unsigned char *sha1)
obj->size, obj->type);
}
free(data);
if (verbose)
display_progress(progress, nr_resolved_deltas);
display_progress(progress, nr_resolved_deltas);
}
}

Expand Down Expand Up @@ -594,8 +591,7 @@ static void fix_unresolved_deltas(int nr_unresolved)
die("local object %s is corrupt", sha1_to_hex(d->base.sha1));
append_obj_to_pack(d->base.sha1, data, size, type);
free(data);
if (verbose)
display_progress(progress, nr_resolved_deltas);
display_progress(progress, nr_resolved_deltas);
}
free(sorted_by_pos);
}
Expand Down Expand Up @@ -774,8 +770,7 @@ int main(int argc, char **argv)
deltas = xmalloc(nr_objects * sizeof(struct delta_entry));
parse_pack_objects(sha1);
if (nr_deltas == nr_resolved_deltas) {
if (verbose)
stop_progress(&progress);
stop_progress(&progress);
/* Flush remaining pack final 20-byte SHA1. */
flush();
} else {
Expand All @@ -788,11 +783,10 @@ int main(int argc, char **argv)
(nr_objects + nr_unresolved + 1)
* sizeof(*objects));
fix_unresolved_deltas(nr_unresolved);
if (verbose) {
stop_progress(&progress);
stop_progress(&progress);
if (verbose)
fprintf(stderr, "%d objects were added to complete this thin pack.\n",
nr_objects - nr_objects_initial);
}
fixup_pack_header_footer(output_fd, sha1,
curr_pack, nr_objects);
}
Expand Down
8 changes: 3 additions & 5 deletions unpack-trees.c
Original file line number Diff line number Diff line change
Expand Up @@ -316,9 +316,8 @@ static void check_updates(struct cache_entry **src, int nr,
while (nr--) {
struct cache_entry *ce = *src++;

if (total)
if (!ce->ce_mode || ce->ce_flags & mask)
display_progress(progress, ++cnt);
if (!ce->ce_mode || ce->ce_flags & mask)
display_progress(progress, ++cnt);
if (!ce->ce_mode) {
if (o->update)
unlink_entry(ce->name, last_symlink);
Expand All @@ -332,8 +331,7 @@ static void check_updates(struct cache_entry **src, int nr,
}
}
}
if (total)
stop_progress(&progress);
stop_progress(&progress);
}

int unpack_trees(unsigned len, struct tree_desc *t, struct unpack_trees_options *o)
Expand Down

0 comments on commit 4d4fcc5

Please sign in to comment.