diff --git a/deps/7zip/7zFile.c b/deps/7zip/7zFile.c index 6e60fcf4fa..c7dd9c08d4 100644 --- a/deps/7zip/7zFile.c +++ b/deps/7zip/7zFile.c @@ -16,16 +16,25 @@ void File_Construct(CSzFile *p) static WRes File_Open(CSzFile *p, const char *name, int writeMode) { p->file = rfopen(name, writeMode ? "wb+" : "rb"); - return (p->file != 0) ? 0 : #ifdef UNDER_CE - 2; /* ENOENT */ + if (!p->file) + return 2; /* ENOENT */ #else - errno; + if (!p->file) + return errno; #endif + return 0; } -WRes InFile_Open(CSzFile *p, const char *name) { return File_Open(p, name, 0); } -WRes OutFile_Open(CSzFile *p, const char *name) { return File_Open(p, name, 1); } +WRes InFile_Open(CSzFile *p, const char *name) +{ + return File_Open(p, name, 0); +} + +WRes OutFile_Open(CSzFile *p, const char *name) +{ + return File_Open(p, name, 1); +} WRes File_Close(CSzFile *p) { @@ -53,7 +62,7 @@ WRes File_Read(CSzFile *p, void *data, size_t *size) WRes File_Write(CSzFile *p, const void *data, size_t *size) { - size_t originalSize = *size; + int64_t originalSize = *size; if (originalSize == 0) return 0; @@ -65,7 +74,8 @@ WRes File_Write(CSzFile *p, const void *data, size_t *size) WRes File_Seek(CSzFile *p, int64_t *pos, ESzSeek origin) { - int whence, res; + int whence; + int64_t res; switch (origin) { case SZ_SEEK_SET: diff --git a/deps/7zip/7zTypes.h b/deps/7zip/7zTypes.h index 7d2217d891..858ec0ed02 100644 --- a/deps/7zip/7zTypes.h +++ b/deps/7zip/7zTypes.h @@ -43,11 +43,7 @@ EXTERN_C_BEGIN typedef int SRes; -#ifdef _WIN32 -typedef unsigned WRes; -#else -typedef int WRes; -#endif +typedef int64_t WRes; #ifndef RINOK #define RINOK(x) { int __result__ = (x); if (__result__ != 0) return __result__; }