summaryrefslogtreecommitdiffstats
path: root/src/OSSupport/GZipFile.cpp
diff options
context:
space:
mode:
authorTycho <work.tycho+git@gmail.com>2014-03-22 15:48:16 +0100
committerTycho <work.tycho+git@gmail.com>2014-03-22 15:48:16 +0100
commit2266c2150daad68c19d320683f6bf5abd7f2ebb2 (patch)
tree111fe0c36643afd27317b8d9a4c7912b6899ec4a /src/OSSupport/GZipFile.cpp
parentPatched tolua to understand size_t (diff)
parentImplemented faster upscaling using templates. (diff)
downloadcuberite-2266c2150daad68c19d320683f6bf5abd7f2ebb2.tar
cuberite-2266c2150daad68c19d320683f6bf5abd7f2ebb2.tar.gz
cuberite-2266c2150daad68c19d320683f6bf5abd7f2ebb2.tar.bz2
cuberite-2266c2150daad68c19d320683f6bf5abd7f2ebb2.tar.lz
cuberite-2266c2150daad68c19d320683f6bf5abd7f2ebb2.tar.xz
cuberite-2266c2150daad68c19d320683f6bf5abd7f2ebb2.tar.zst
cuberite-2266c2150daad68c19d320683f6bf5abd7f2ebb2.zip
Diffstat (limited to 'src/OSSupport/GZipFile.cpp')
-rw-r--r--src/OSSupport/GZipFile.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/OSSupport/GZipFile.cpp b/src/OSSupport/GZipFile.cpp
index cbf6be6c4..b13e519e0 100644
--- a/src/OSSupport/GZipFile.cpp
+++ b/src/OSSupport/GZipFile.cpp
@@ -73,12 +73,15 @@ int cGZipFile::ReadRestOfFile(AString & a_Contents)
// Since the gzip format doesn't really support getting the uncompressed length, we need to read incrementally. Yuck!
int NumBytesRead = 0;
+ int TotalBytes = 0;
char Buffer[64 KiB];
while ((NumBytesRead = gzread(m_File, Buffer, sizeof(Buffer))) > 0)
{
+ TotalBytes += NumBytesRead;
a_Contents.append(Buffer, NumBytesRead);
}
- return NumBytesRead;
+ // NumBytesRead is < 0 on error
+ return (NumBytesRead >= 0) ? TotalBytes : NumBytesRead;
}