X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=prune-packed.c;h=d24b097114ef2610416b106ea9aa2000873924f3;hb=ae448e3854d8b6e7e37aa88fa3917f5dd97f3210;hp=5306e8e5ef411bfa7e6bcf4ba0639e640592818b;hpb=c1067050ce58b5b39f528fe634732da858664603;p=git.git diff --git a/prune-packed.c b/prune-packed.c index 5306e8e5..d24b0971 100644 --- a/prune-packed.c +++ b/prune-packed.c @@ -26,6 +26,8 @@ static void prune_dir(int i, DIR *dir, char *pathname, int len) else if (unlink(pathname) < 0) error("unable to unlink %s", pathname); } + pathname[len] = 0; + rmdir(pathname); } static void prune_packed_objects(void) @@ -46,7 +48,7 @@ static void prune_packed_objects(void) sprintf(pathname + len, "%02x/", i); d = opendir(pathname); if (!d) - die("unable to open %s", pathname); + continue; prune_dir(i, d, pathname, len + 3); closedir(d); } @@ -56,6 +58,8 @@ int main(int argc, char **argv) { int i; + setup_git_directory(); + for (i = 1; i < argc; i++) { const char *arg = argv[i]; @@ -69,6 +73,7 @@ int main(int argc, char **argv) /* Handle arguments here .. */ usage(prune_packed_usage); } + sync(); prune_packed_objects(); return 0; }