[PATCH 1/5] prune-packed: don't call display_progress() for every file
- From
Nicolas Pitre <nico@cam.org>
- Date
- Oct 30, 2007, 18:57 UTC
- Message-ID
- <1193770655-20492-2-git-send-email-nico@cam.org>
- In-Reply-To
- <1193770655-20492-1-git-send-email-nico@cam.org>
The progress count is per fanout directory, so it is useless to call it for every file as the count doesn't change that often.
Signed-off-by: Nicolas Pitre <nico@cam.org> --- builtin-prune-packed.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/builtin-prune-packed.c b/builtin-prune-packed.c index 015c8bb..907e368 100644 --- a/builtin-prune-packed.c +++ b/builtin-prune-packed.c @@ -15,6 +15,9 @@ 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); + sprintf(hex, "%02x", i); while ((de = readdir(dir)) != NULL) { unsigned char sha1[20]; @@ -26,8 +29,6 @@ static void prune_dir(int i, DIR *dir, char *pathname, int len, int opts) if (!has_sha1_pack(sha1, NULL)) continue; memcpy(pathname + len, de->d_name, 38); - if (opts == VERBOSE) - display_progress(&progress, i + 1); if (opts & DRY_RUN) printf("rm -f %s\n", pathname); else if (unlink(pathname) < 0)
-- 1.5.3.4.1463.gf79ad2