1. Stefan Saasen
  2. git


Junio C Hamano  committed f527cb8

pack-objects: do not stop at object that is "too small"

Because we sort the delta window by name-hash and then size,
hitting an object that is too small to consider as a delta base
for the current object does not mean we do not have better
candidate in the window beyond it.

Noticed by Shawn Pearce, analyzed by Nico, Linus and me.

Signed-off-by: Junio C Hamano <junkio@cox.net>

  • Participants
  • Parent commits 6a74642
  • Branches master

Comments (0)

Files changed (1)

File pack-objects.c

View file
 	if (cur_entry->delta)
 		max_size = cur_entry->delta_size-1;
 	if (sizediff >= max_size)
-		return -1;
+		return 0;
 	delta_buf = diff_delta(old->data, oldsize,
 			       cur->data, size, &delta_size, max_size);
 	if (!delta_buf)