summaryrefslogtreecommitdiff
path: root/src/archive
diff options
context:
space:
mode:
authorMax Kellermann <max@musicpd.org>2020-09-04 14:13:44 +0200
committerMax Kellermann <max@musicpd.org>2020-09-04 14:33:44 +0200
commite44b953d9ab0cc0ea9b1ac07315feecc0b3c74d1 (patch)
treef0b3ac3d7e319a8deea306f843c8965173560bb2 /src/archive
parent6c850206301f5a4c39322fd090af46a3b685b03d (diff)
archive/zzip: use zzip_ssize_t to avoid integer overflows
Diffstat (limited to 'src/archive')
-rw-r--r--src/archive/plugins/ZzipArchivePlugin.cxx6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/archive/plugins/ZzipArchivePlugin.cxx b/src/archive/plugins/ZzipArchivePlugin.cxx
index a13df5108..c4ebbd582 100644
--- a/src/archive/plugins/ZzipArchivePlugin.cxx
+++ b/src/archive/plugins/ZzipArchivePlugin.cxx
@@ -147,12 +147,12 @@ ZzipInputStream::Read(void *ptr, size_t read_size)
{
const ScopeUnlock unlock(mutex);
- int ret = zzip_file_read(file, ptr, read_size);
- if (ret < 0)
+ zzip_ssize_t nbytes = zzip_file_read(file, ptr, read_size);
+ if (nbytes < 0)
throw std::runtime_error("zzip_file_read() has failed");
offset = zzip_tell(file);
- return ret;
+ return nbytes;
}
bool