X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f6bcfd974ef26faf6f91a62cac09827e09463fd1..f0adbe0ffd7c1f1d3fd21926092d6fafd4fc47dc:/src/common/unzip.c diff --git a/src/common/unzip.c b/src/common/unzip.c index d9b855ae5c..402cd3cf0f 100644 --- a/src/common/unzip.c +++ b/src/common/unzip.c @@ -13,7 +13,7 @@ $Id$ */ - +#include "wx/defs.h" #include "wx/setup.h" #if wxUSE_ZLIB && wxUSE_ZIPSTREAM @@ -21,7 +21,19 @@ $Id$ #include #include #include +/* #include "zlib.h" + normally, the compiler options should contain -I../zlib, but it is + apparently not the case for all MSW makefiles and so, unless we use + configure (which defines __WX_SETUP_H__) or it is explicitly overridden by + the user (who can define wxUSE_ZLIB_H_IN_PATH), we hardcode the path here +*/ +#if defined(__WXMSW__) && !defined(__WX_SETUP_H__) && !defined(wxUSE_ZLIB_H_IN_PATH) + #include "../zlib/zlib.h" +#else + #include "zlib.h" +#endif + /* Not the right solution (paths in makefiles) but... */ #ifdef __BORLANDC__ @@ -149,6 +161,11 @@ typedef struct int unzlocal_CheckCurrentFileCoherencyHeader (unz_s*, uInt*, uLong*, uInt*); #endif +/* disable warnings about K&R declarations until the end of file */ +#ifdef _MSC_VER +#pragma warning(disable:4131) +#endif /* VC++ */ + /* =========================================================================== Read a byte from a gz_stream; update next_in and avail_in. Return EOF for end of file. @@ -353,7 +370,7 @@ local uLong unzlocal_SearchCentralDir(fin) return uPosFound; } -#ifdef __WXMAC__ +#if defined(__WXMAC__) && !defined(__UNIX__) void wxUnix2MacFilename (char *s) ; void wxUnix2MacFilename (char *s) @@ -425,10 +442,10 @@ extern unzFile ZEXPORT unzOpen (path) if (unz_copyright[0]!=' ') return NULL; -#ifdef __WXMAC__ +#if defined(__WXMAC__) && !defined(__UNIX__) strcpy( wxBuffer , path ) ; wxUnix2MacFilename( wxBuffer ) ; - fin=fopen(wxBuffer,"rb"); + fin=fopen(wxBuffer,"rb"); #else fin=fopen(path,"rb"); #endif @@ -837,11 +854,11 @@ extern int ZEXPORT unzLocateFile (file, szFileName, iCaseSensitivity) const char *c; char *c2; char szFileName2[UNZ_MAXFILENAMEINZIP+1]; - + uLong num_fileSaved; uLong pos_in_central_dirSaved; - for (c = szFileName, c2 = szFileName2; *c != '\0'; c++, c2++) + for (c = szFileName, c2 = szFileName2; *c != '\0'; c++, c2++) if (*c == '\\') *c2 = '/'; else *c2 = *c; *c2 = '\0';