Code

prune-packed: advanced progress even for non-existing fan-out directories
authorJohannes Sixt <j6t@kdbg.org>
Mon, 27 Apr 2009 07:44:58 +0000 (09:44 +0200)
committerJunio C Hamano <gitster@pobox.com>
Mon, 27 Apr 2009 08:06:35 +0000 (01:06 -0700)
A progress indicator is used to count through the 256 object fan-out
directories while unused object files are removed. (However, it becomes
visible only if this process takes long enough.)

Previously, display_progress() was only called if object files were
actually removed. But if directories towards the end (fd/, fe/, ff/) did
not exist, this could leave a strange line

   Removing duplicate objects:  99% (255/256), done.

in the terminal instead of the expected "100% (256/256)".

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin-prune-packed.c

index 2d5b2cd353a5e80a74e3828aae8e0c7dfa0e1997..4942892e9f83abc7beed6570d508cfe76da126a0 100644 (file)
@@ -55,6 +55,7 @@ void prune_packed_objects(int opts)
        for (i = 0; i < 256; i++) {
                DIR *d;
 
+               display_progress(progress, i + 1);
                sprintf(pathname + len, "%02x/", i);
                d = opendir(pathname);
                if (!d)