@@ -18,7 +18,7 @@ public static class ZipHelpers
18
18
{
19
19
private static async Task < SevenZipExtractor ? > GetZipFile ( BaseStorageFile archive , string password = "" )
20
20
{
21
- return await Filesystem . FilesystemTasks . Wrap ( async ( ) =>
21
+ return await FilesystemTasks . Wrap ( async ( ) =>
22
22
{
23
23
var arch = new SevenZipExtractor ( await archive . OpenStreamForReadAsync ( ) , password ) ;
24
24
return arch ? . ArchiveFileData is null ? null : arch ; // Force load archive (1665013614u)
@@ -39,7 +39,7 @@ public static async Task ExtractArchive(BaseStorageFile archive, BaseStorageFold
39
39
using SevenZipExtractor ? zipFile = await GetZipFile ( archive , password ) ;
40
40
if ( zipFile is null )
41
41
return ;
42
- //zipFile.IsStreamOwner = true;
42
+
43
43
var directoryEntries = new List < ArchiveFileInfo > ( ) ;
44
44
var fileEntries = new List < ArchiveFileInfo > ( ) ;
45
45
foreach ( ArchiveFileInfo entry in zipFile . ArchiveFileData )
@@ -91,6 +91,7 @@ public static async Task ExtractArchive(BaseStorageFile archive, BaseStorageFold
91
91
byte [ ] buffer = new byte [ 4096 ] ;
92
92
int entriesAmount = fileEntries . Count ;
93
93
int entriesFinished = 0 ;
94
+ var minimumTime = new DateTime ( 1 ) ;
94
95
95
96
FileSystemProgress fsProgress = new ( progress , true , Shared . Enums . FileSystemStatusCode . InProgress , entriesAmount ) ;
96
97
fsProgress . Report ( ) ;
@@ -119,10 +120,10 @@ public static async Task ExtractArchive(BaseStorageFile archive, BaseStorageFold
119
120
return ; // TODO: handle error
120
121
}
121
122
}
122
-
123
+
123
124
_ = new FileInfo ( filePath )
124
125
{
125
- CreationTime = entry . CreationTime < entry . LastWriteTime ? entry . CreationTime : entry . LastWriteTime ,
126
+ CreationTime = entry . CreationTime > minimumTime && entry . CreationTime < entry . LastWriteTime ? entry . CreationTime : entry . LastWriteTime ,
126
127
LastWriteTime = entry . LastWriteTime ,
127
128
} ;
128
129
0 commit comments