]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - tools/quake3/common/vfs.c
Merge commit '2b85b7c20c20df677e30541c93b80725dc2277c9' into garux-merge
[xonotic/netradiant.git] / tools / quake3 / common / vfs.c
index 474cb8e6033b6ce7e55557612c02492db88a2b24..a76d3172af5733dde66351ed77ef4cbb9a386c8d 100644 (file)
@@ -561,6 +561,9 @@ qboolean vfsPackFile( const char *filename, const char *packname ){
                // we need to end the buffer with a 0
                ( (char*) ( bufferptr ) )[file->size] = 0;
 
+               mz_uint16 DOS_time = (mz_uint16)(((file->zipinfo.cur_file_info.tmu_date.tm_hour) << 11) + ((file->zipinfo.cur_file_info.tmu_date.tm_min) << 5) + ((file->zipinfo.cur_file_info.tmu_date.tm_sec) >> 1));
+               mz_uint16 DOS_date = (mz_uint16)(((file->zipinfo.cur_file_info.tmu_date.tm_year - 1980) << 9) + ((file->zipinfo.cur_file_info.tmu_date.tm_mon + 1) << 5) + file->zipinfo.cur_file_info.tmu_date.tm_mday);
+
                i = unzReadCurrentFile( file->zipfile, bufferptr, file->size );
                unzCloseCurrentFile( file->zipfile );
                if ( i < 0 ) {
@@ -568,7 +571,7 @@ qboolean vfsPackFile( const char *filename, const char *packname ){
                }
                else{
                        mz_bool success = MZ_TRUE;
-                       success &= mz_zip_add_mem_to_archive_file_in_place( packname, filename, bufferptr, i, 0, 0, 10 );
+                       success &= mz_zip_add_mem_to_archive_file_in_place_with_time( packname, filename, bufferptr, i, 0, 0, 10, DOS_time, DOS_date );
                                if ( !success ){
                                        Error( "Failed creating zip archive \"%s\"!\n", packname );
                                }