提交 ce726ec8 编写于 作者: S Sergey Vlasov 提交者: Junio C Hamano

[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: NSergey Vlasov <vsu@altlinux.ru>
Signed-off-by: NJunio C Hamano <junkio@cox.net>
上级 2ab141a2
......@@ -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) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册