diff options
author | Stanislav Malyshev <stas@php.net> | 2012-05-28 18:54:15 -0700 |
---|---|---|
committer | Stanislav Malyshev <stas@php.net> | 2012-05-28 18:54:15 -0700 |
commit | 158d8a6b088662ce9d31e0c777c6ebe90efdc854 (patch) | |
tree | 0c1e1c824548d5eba5a91a06d97a02a4e636a915 | |
parent | 213119c83ffdbe518ea33941e00d141ff49e27b6 (diff) | |
download | php-git-158d8a6b088662ce9d31e0c777c6ebe90efdc854.tar.gz |
fix unchecked emalloc
-rw-r--r-- | ext/phar/tar.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/ext/phar/tar.c b/ext/phar/tar.c index b914db129e..917734c992 100644 --- a/ext/phar/tar.c +++ b/ext/phar/tar.c @@ -38,7 +38,7 @@ static php_uint32 phar_tar_number(char *buf, int len) /* {{{ */ /* }}} */ /* adapted from format_octal() in libarchive - * + * * Copyright (c) 2003-2009 Tim Kientzle * All rights reserved. * @@ -161,7 +161,7 @@ static int phar_tar_process_metadata(phar_entry_info *entry, php_stream *fp TSRM size_t save = php_stream_tell(fp), read; phar_entry_info *mentry; - metadata = (char *) emalloc(entry->uncompressed_filesize + 1); + metadata = (char *) safe_emalloc(1, entry->uncompressed_filesize, 1); read = php_stream_read(fp, metadata, entry->uncompressed_filesize); if (read != entry->uncompressed_filesize) { @@ -377,7 +377,7 @@ bail: } read = php_stream_read(fp, buf, sizeof(buf)); - + if (read != sizeof(buf)) { efree(entry.filename); if (error) { |