X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=fsck-cache.c;h=916792417d55b16124f2c352bfc1efcb8461ebc0;hb=175011320690864d1483e7eec19da7f71d14dad7;hp=d69c426b360db21820a4e180202ae4d71e0ba965;hpb=477606f57d6b1cce3f354d394be26745b92808f7;p=git.git diff --git a/fsck-cache.c b/fsck-cache.c index d69c426b..91679241 100644 --- a/fsck-cache.c +++ b/fsck-cache.c @@ -6,46 +6,15 @@ #include "tree.h" #include "blob.h" #include "tag.h" -#include "delta.h" #define REACHABLE 0x0001 static int show_root = 0; static int show_tags = 0; static int show_unreachable = 0; -static int show_max_delta_depth = 0; static int keep_cache_objects = 0; static unsigned char head_sha1[20]; -static void expand_deltas(void) -{ - int i, max_depth = 0; - - /* - * To be as efficient as possible we look for delta heads and - * recursively process them going backward, and parsing - * resulting objects along the way. This allows for processing - * each delta objects only once regardless of the delta depth. - */ - for (i = 0; i < nr_objs; i++) { - struct object *obj = objs[i]; - if (obj->parsed && !obj->delta && obj->attached_deltas) { - int depth = 0; - char type[10]; - unsigned long size; - void *buf = read_sha1_file(obj->sha1, type, &size); - if (!buf) - continue; - depth = process_deltas(buf, size, obj->type, - obj->attached_deltas); - if (max_depth < depth) - max_depth = depth; - } - } - if (show_max_delta_depth) - printf("maximum delta depth = %d\n", max_depth); -} - static void check_connectivity(void) { int i; @@ -56,12 +25,8 @@ static void check_connectivity(void) struct object_list *refs; if (!obj->parsed) { - if (obj->delta) - printf("unresolved delta %s\n", - sha1_to_hex(obj->sha1)); - else - printf("missing %s %s\n", - obj->type, sha1_to_hex(obj->sha1)); + printf("missing %s %s\n", + obj->type, sha1_to_hex(obj->sha1)); continue; } @@ -74,17 +39,9 @@ static void check_connectivity(void) refs->item->type, sha1_to_hex(refs->item->sha1)); } - /* Don't bother with tag reachability. */ - if (obj->type == tag_type) - continue; - if (show_unreachable && !(obj->flags & REACHABLE)) { - if (obj->attached_deltas) - printf("foreign delta reference %s\n", - sha1_to_hex(obj->sha1)); - else - printf("unreachable %s %s\n", - obj->type, sha1_to_hex(obj->sha1)); + printf("unreachable %s %s\n", + obj->type, sha1_to_hex(obj->sha1)); continue; } @@ -244,8 +201,6 @@ static int fsck_sha1(unsigned char *sha1) return fsck_commit((struct commit *) obj); if (obj->type == tag_type) return fsck_tag((struct tag *) obj); - if (!obj->type && obj->delta) - return 0; return -1; } @@ -431,10 +386,6 @@ int main(int argc, char **argv) show_root = 1; continue; } - if (!strcmp(arg, "--delta-depth")) { - show_max_delta_depth = 1; - continue; - } if (!strcmp(arg, "--cache")) { keep_cache_objects = 1; continue; @@ -451,8 +402,6 @@ int main(int argc, char **argv) } fsck_sha1_list(); - expand_deltas(); - heads = 0; for (i = 1; i < argc; i++) { const char *arg = argv[i];