Directories from TAR and ZIP now have nil for their data

This commit is contained in:
Timofey Solomko
2017-10-28 13:44:13 +03:00
parent f99ef86611
commit 8b67fca4fe
2 changed files with 16 additions and 8 deletions
+9 -5
View File
@@ -26,11 +26,15 @@ public class TarContainer: Container {
let infos = try info(container: data)
var entries = [TarEntry]()
for infoEntry in infos {
let dataStartIndex = infoEntry.blockStartIndex + 512
let dataEndIndex = dataStartIndex + infoEntry.size!
let entryData = data[dataStartIndex..<dataEndIndex]
entries.append(TarEntry(infoEntry, entryData))
for entryInfo in infos {
if entryInfo.type == .directory {
entries.append(TarEntry(entryInfo, nil))
} else {
let dataStartIndex = entryInfo.blockStartIndex + 512
let dataEndIndex = dataStartIndex + entryInfo.size!
let entryData = data[dataStartIndex..<dataEndIndex]
entries.append(TarEntry(entryInfo, entryData))
}
}
return entries
+7 -3
View File
@@ -28,9 +28,13 @@ public class ZipContainer: Container {
let infos = try info(container: data)
var entries = [ZipEntry]()
for infoEntry in infos {
let entryData = try ZipContainer.getEntryData(from: data, using: infoEntry)
entries.append(ZipEntry(infoEntry, entryData))
for entryInfo in infos {
if entryInfo.type == .directory {
entries.append(ZipEntry(entryInfo, nil))
} else {
let entryData = try ZipContainer.getEntryData(from: data, using: entryInfo)
entries.append(ZipEntry(entryInfo, entryData))
}
}
return entries