X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=archival%2Flibunarchive%2Fdata_extract_to_buffer.c;h=1d74e03357f2725d526dfce808e839aca08ecf74;hb=82604e973085f91f1b99cacea08963d0d1468084;hp=02ee4b362300a2f52682064463b7ffa4e61fc71d;hpb=61b7904afdf2fca21e4d6a4f70a73d1079f8f877;p=oweals%2Fbusybox.git diff --git a/archival/libunarchive/data_extract_to_buffer.c b/archival/libunarchive/data_extract_to_buffer.c index 02ee4b362..1d74e0335 100644 --- a/archival/libunarchive/data_extract_to_buffer.c +++ b/archival/libunarchive/data_extract_to_buffer.c @@ -1,11 +1,17 @@ -#include -#include -#include "unarchive.h" +/* vi: set sw=4 ts=4: */ +/* + * Copyright 2002 Glenn McGrath + * + * Licensed under GPLv2 or later, see file LICENSE in this tarball for details. + */ + #include "libbb.h" +#include "unarchive.h" -extern void data_extract_to_buffer(archive_handle_t *archive_handle) +void FAST_FUNC data_extract_to_buffer(archive_handle_t *archive_handle) { - archive_handle->buffer = xmalloc(archive_handle->file_header->size + 1); - - xread_all(archive_handle->src_fd, archive_handle->buffer, archive_handle->file_header->size); + unsigned int size = archive_handle->file_header->size; + + archive_handle->buffer = xzalloc(size + 1); + xread(archive_handle->src_fd, archive_handle->buffer, size); }