summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCyril Roelandt <tipecaml@gmail.com>2013-11-10 11:06:37 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2013-11-10 11:07:47 +0100
commit9058d42536b818e0f30aa93751ae0beff0f4d202 (patch)
tree08a0c621d1d07244ab257559f5fc9b24b641cbc9
parent7a05d6fac03cd1d96ef219ad64cb2a61c8300c47 (diff)
Fix reading tar content
* tar.c (tar_get_next_record): Allocate a buffer.
-rw-r--r--tar.c4
1 files 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)