Signed-off-by: Nguyễn Thái Ngọc Duy <[email protected]>
---
by setting usable_delta to zero, I disable tree delta in
pack-objects. Some test cases spotted this.
builtin/pack-objects.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/builtin/pack-objects.c b/builtin/pack-objects.c
index 945b817..b60b1a0 100644
--- a/builtin/pack-objects.c
+++ b/builtin/pack-objects.c
@@ -256,7 +256,12 @@ static unsigned long write_no_reuse_object(struct sha1file
*f, struct object_ent
struct git_istream *st = NULL;
char *result = "OK";
- if (!usable_delta) {
+ if (!usable_delta ||
+ /*
+ * Force loading canonical tree. In future we may want to
+ * read v4 trees directly instead.
+ */
+ (pack_version == 4 && entry->type == OBJ_TREE)) {
if (entry->type == OBJ_BLOB &&
entry->size > big_file_threshold &&
(st = open_istream(entry->idx.sha1, &type, &size, NULL)) !=
NULL)
@@ -518,9 +523,6 @@ static unsigned long write_object(struct sha1file *f,
else
usable_delta = 0; /* base could end up in another pack */
- if (pack_version == 4 && entry->type == OBJ_TREE)
- usable_delta = 0;
-
if (!reuse_object)
to_reuse = 0; /* explicit */
else if (!entry->in_pack)
--
1.8.2.82.gc24b958
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html