fast-import: do not call diff_delta() with empty buffer
authorMike Hommey <mh@glandium.org>
Sat, 30 Jun 2018 21:41:06 +0000 (06:41 +0900)
committerJunio C Hamano <gitster@pobox.com>
Fri, 6 Jul 2018 16:46:12 +0000 (09:46 -0700)
We know diff_delta() returns NULL, saying "no good delta exists for
it", when fed an empty data. Check the length of the data in the
caller to avoid such a call.

This incidentally reduces the number of attempted deltification we
see in the final statistics.

Signed-off-by: Mike Hommey <mh@glandium.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
fast-import.c
index 4d55910ab9a0634a553c01643035ef9afe6034c7..12195d54d744f60c0a4e1074814559325e42085e 100644 (file)
@@ -1076,7 +1076,7 @@ static int store_object(
                return 1;
        }
 
-       if (last && last->data.buf && last->depth < max_depth
+       if (last && last->data.len && last->data.buf && last->depth < max_depth
                && dat->len > the_hash_algo->rawsz) {
 
                delta_count_attempts_by_type[type]++;