minor git-prune optimization

Don't try to remove the containing directory for every pruned object but
try only once after the directory has been scanned instead.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Nicolas Pitre 2007-03-20 23:32:13 -04:00 committed by Junio C Hamano
parent 5721685699
commit 3254d218b4

View File

@ -14,10 +14,8 @@ static int prune_object(char *path, const char *filename, const unsigned char *s
enum object_type type = sha1_object_info(sha1, NULL);
printf("%s %s\n", sha1_to_hex(sha1),
(type > 0) ? typename(type) : "unknown");
return 0;
}
unlink(mkpath("%s/%s", path, filename));
rmdir(path);
} else
unlink(mkpath("%s/%s", path, filename));
return 0;
}
@ -60,6 +58,8 @@ static int prune_dir(int i, char *path)
}
fprintf(stderr, "bad sha1 file: %s/%s\n", path, de->d_name);
}
if (!show_only)
rmdir(path);
closedir(dir);
return 0;
}