[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 <vsu@altlinux.ru> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
2ab141a26f
commit
ce726ec8d8
@ -34,9 +34,10 @@ void *patch_delta(void *src_buf, unsigned long src_size,
|
||||
|
||||
/* 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) {
|
||||
|
Loading…
Reference in New Issue
Block a user