mirror of
https://github.com/tsolomko/SWCompression.git
synced 2026-06-23 14:56:41 +00:00
[GZip] Add null terminator as a zero byte instead of character
Fixes #66.
This commit is contained in:
@@ -130,29 +130,29 @@ public class GzipArchive: Archive {
|
||||
var flags: UInt8 = 0
|
||||
|
||||
var commentData = Data()
|
||||
if var comment = comment {
|
||||
if let comment = comment {
|
||||
flags |= 1 << 4
|
||||
if comment.last != "\u{00}" {
|
||||
comment.append("\u{00}")
|
||||
}
|
||||
if let data = comment.data(using: .isoLatin1) {
|
||||
commentData = data
|
||||
} else {
|
||||
throw GzipError.cannotEncodeISOLatin1
|
||||
}
|
||||
if commentData.last != 0 {
|
||||
commentData.append(0)
|
||||
}
|
||||
}
|
||||
|
||||
var fileNameData = Data()
|
||||
if var fileName = fileName {
|
||||
if let fileName = fileName {
|
||||
flags |= 1 << 3
|
||||
if fileName.last != "\u{00}" {
|
||||
fileName.append("\u{00}")
|
||||
}
|
||||
if let data = fileName.data(using: .isoLatin1) {
|
||||
fileNameData = data
|
||||
} else {
|
||||
throw GzipError.cannotEncodeISOLatin1
|
||||
}
|
||||
if fileNameData.last != 0 {
|
||||
fileNameData.append(0)
|
||||
}
|
||||
}
|
||||
|
||||
if !extraFields.isEmpty {
|
||||
|
||||
Reference in New Issue
Block a user