summaryrefslogtreecommitdiff
path: root/fsck-cache.c
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2005-06-27 10:33:33 (GMT)
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-27 22:27:51 (GMT)
commitc4584ae3fd7cd595a638a07dfd853e9d2745e930 (patch)
tree735d3d7612055565941f98219ff862ce24ef2c78 /fsck-cache.c
parentee85cbc6887d6ae4eb09a3e2c7319f66ae7c9034 (diff)
downloadgit-c4584ae3fd7cd595a638a07dfd853e9d2745e930.zip
git-c4584ae3fd7cd595a638a07dfd853e9d2745e930.tar.gz
git-c4584ae3fd7cd595a638a07dfd853e9d2745e930.tar.bz2
[PATCH] Remove "delta" object representation.
Packed delta files created by git-pack-objects seems to be the way to go, and existing "delta" object handling code has exposed the object representation details to too many places. Remove it while we refactor code to come up with a proper interface in sha1_file.c. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fsck-cache.c')
-rw-r--r--fsck-cache.c55
1 files changed, 4 insertions, 51 deletions
diff --git a/fsck-cache.c b/fsck-cache.c
index 7c55fe5..9167924 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;
}
@@ -75,12 +40,8 @@ static void check_connectivity(void)
}
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;
}
@@ -240,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;
}
@@ -427,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;
@@ -447,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];