archivers/zip.c
changeset 538 8752e3c0dbf9
parent 504 3420d82f9b01
child 540 a6b6f0a54cd2
equal deleted inserted replaced
537:938e33391878 538:8752e3c0dbf9
    52     ZIP_UNRESOLVED_FILE,
    52     ZIP_UNRESOLVED_FILE,
    53     ZIP_UNRESOLVED_SYMLINK,
    53     ZIP_UNRESOLVED_SYMLINK,
    54     ZIP_RESOLVING,
    54     ZIP_RESOLVING,
    55     ZIP_RESOLVED,
    55     ZIP_RESOLVED,
    56     ZIP_BROKEN_FILE,
    56     ZIP_BROKEN_FILE,
    57     ZIP_BROKEN_SYMLINK,
    57     ZIP_BROKEN_SYMLINK
    58 } ZipResolveType;
    58 } ZipResolveType;
    59 
    59 
    60 
    60 
    61 /*
    61 /*
    62  * One ZIPentry is kept for each file in an open ZIP archive.
    62  * One ZIPentry is kept for each file in an open ZIP archive.
   722             if (__PHYSFS_platformRead(in, compressed, compsize, 1) == 1)
   722             if (__PHYSFS_platformRead(in, compressed, compsize, 1) == 1)
   723             {
   723             {
   724                 memset(&stream, '\0', sizeof (z_stream));
   724                 memset(&stream, '\0', sizeof (z_stream));
   725                 stream.next_in = compressed;
   725                 stream.next_in = compressed;
   726                 stream.avail_in = compsize;
   726                 stream.avail_in = compsize;
   727                 stream.next_out = path;
   727                 stream.next_out = (unsigned char *) path;
   728                 stream.avail_out = size;
   728                 stream.avail_out = size;
   729                 if (zlib_err(inflateInit2(&stream, -MAX_WBITS)) == Z_OK)
   729                 if (zlib_err(inflateInit2(&stream, -MAX_WBITS)) == Z_OK)
   730                 {
   730                 {
   731                     rc = zlib_err(inflate(&stream, Z_FINISH));
   731                     rc = zlib_err(inflate(&stream, Z_FINISH));
   732                     inflateEnd(&stream);
   732                     inflateEnd(&stream);
   880               ((xattr & UNIX_FILETYPE_MASK) == UNIX_FILETYPE_SYMLINK)
   880               ((xattr & UNIX_FILETYPE_MASK) == UNIX_FILETYPE_SYMLINK)
   881            );
   881            );
   882 } /* zip_has_symlink_attr */
   882 } /* zip_has_symlink_attr */
   883 
   883 
   884 
   884 
   885 PHYSFS_sint64 zip_dos_time_to_physfs_time(PHYSFS_uint32 dostime)
   885 static PHYSFS_sint64 zip_dos_time_to_physfs_time(PHYSFS_uint32 dostime)
   886 {
   886 {
   887     PHYSFS_uint32 dosdate;
   887     PHYSFS_uint32 dosdate;
   888     struct tm unixtime;
   888     struct tm unixtime;
   889     memset(&unixtime, '\0', sizeof (unixtime));
   889     memset(&unixtime, '\0', sizeof (unixtime));
   890 
   890