Anonymous committed ce726ec

[PATCH] NUL terminate the object data in patch_delta()

At least pretty_print_commit() expects to get NUL-terminated commit data to
work properly. unpack_sha1_rest(), which reads objects from separate files,
and unpack_non_delta_entry(), which reads non-delta-compressed objects from
pack files, already add the NUL byte after the object data, but patch_delta()
did not do it, which caused problems with, e.g., git-rev-list --pretty when
there are delta-compressed commit objects.

Signed-off-by: Sergey Vlasov <>
Signed-off-by: Junio C Hamano <>

  • Participants
  • Parent commits 2ab141a

Comments (0)

Files changed (1)

 	/* now the result size */
 	size = get_delta_hdr_size(&data);
-	dst_buf = malloc(size);
+	dst_buf = malloc(size + 1);
 	if (!dst_buf)
 		return NULL;
+	dst_buf[size] = 0;
 	out = dst_buf;
 	while (data < top) {