Read unzip.h for more info
*/
+#if 0
+for what compiler ?
+#if !defined(__VISAGECPP__)
+# pragma warning(disable:4001) /* non standard extension used: single line comment */
+#endif
+#endif
+
+
#include "wx/setup.h"
#if wxUSE_ZLIB && wxUSE_ZIPSTREAM
#include <stdlib.h>
#include <string.h>
#include "zlib.h"
+
+/* Not the right solution (paths in makefiles) but... */
+#ifdef __BORLANDC__
+#include "../common/unzip.h"
+#else
#include "unzip.h"
+#endif
#ifdef STDC
# include <stddef.h>
} unz_s;
#if defined (__VISAGECPP__)
-// VA always requires prototypes
+/* VA always requires prototypes */
int unzlocal_CheckCurrentFileCoherencyHeader (unz_s*, uInt*, uLong*, uInt*);
#endif
return uPosFound;
}
+#ifdef __WXMAC__
+void wxUnix2MacFilename (char *s) ;
+void
+wxUnix2MacFilename (char *s)
+{
+ if (s)
+ {
+ if ( *s == '.' )
+ {
+ // relative path , since it goes on with slash which is translated to a :
+ memmove( s , s+1 ,strlen( s ) ) ;
+ }
+ else if ( *s == '/' )
+ {
+ // absolute path -> on mac just start with the drive name
+ memmove( s , s+1 ,strlen( s ) ) ;
+ }
+ else
+ {
+// wxASSERT_MSG( 1 , "unkown path beginning" ) ;
+ }
+ while (*s)
+ {
+ if (*s == '/' || *s == '\\')
+ {
+ // convert any back-directory situations
+ if ( *(s+1) == '.' && *(s+2) == '.' && ( (*(s+3) == '/' || *(s+3) == '\\') ) )
+ {
+ *s = ':';
+ memmove( s+1 , s+3 ,strlen( s+3 ) + 1 ) ;
+ }
+ else
+ *s = ':';
+ }
+
+ s++ ;
+ }
+ }
+}
+extern char * wxBuffer ;
+#endif
+
/*
Open a Zip file. path contain the full pathname (by example,
on a Windows NT computer "c:\\test\\zlib109.zip" or on an Unix computer
if (unz_copyright[0]!=' ')
return NULL;
+#ifdef __WXMAC__
+ strcpy( wxBuffer , path ) ;
+ wxUnix2MacFilename( wxBuffer ) ;
+ fin=fopen(wxBuffer,"rb");
+#else
fin=fopen(path,"rb");
+#endif
if (fin==NULL)
return NULL;
#else
-// the file shouldn't be empty, som compilers don't like it
+/* the file shouldn't be empty, som compilers don't like it */
static const int dummyVariableInUnzip = 17;
-#endif // wxUSE_ZLIB && wxUSE_ZIPSTREAM
+#endif /* wxUSE_ZLIB && wxUSE_ZIPSTREAM */