From 9058d42536b818e0f30aa93751ae0beff0f4d202 Mon Sep 17 00:00:00 2001 From: Cyril Roelandt Date: Sun, 10 Nov 2013 11:06:37 +0100 Subject: Fix reading tar content * tar.c (tar_get_next_record): Allocate a buffer. --- tar.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tar.c b/tar.c index e7391f978..db9401a90 100644 --- a/tar.c +++ b/tar.c @@ -119,8 +119,8 @@ static union record * tar_get_next_record (struct archive *archive) { error_t err; - void *buf = NULL; - size_t n = 0; + void *buf = mmap(NULL, RECORDSIZE, PROT_READ|PROT_WRITE, MAP_ANONYMOUS, -1, 0); + size_t n = RECORDSIZE; err = store_read (archive->tar_file, archive->current_tar_position, RECORDSIZE, &buf, &n); if (err) -- cgit v1.2.3