mirror of
https://github.com/tsolomko/SWCompression.git
synced 2026-06-23 14:56:41 +00:00
[TAR] Add a Data extension function which pads to 512 bytes and appends
This commit is contained in:
@@ -214,6 +214,7 @@
|
||||
06F276DF1F2BAB4A00E67335 /* 7zEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06F276DE1F2BAB4900E67335 /* 7zEntry.swift */; };
|
||||
06FEAD921F54B9CD00AD016E /* EncodingTree.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06FEAD911F54B9CD00AD016E /* EncodingTree.swift */; };
|
||||
E648151D26A889B8009261F0 /* TarHeader.swift in Sources */ = {isa = PBXBuildFile; fileRef = E648151C26A889B8009261F0 /* TarHeader.swift */; };
|
||||
E64F71BC26AAFD6A008BB308 /* Data+Tar.swift in Sources */ = {isa = PBXBuildFile; fileRef = E64F71BB26AAFD6A008BB308 /* Data+Tar.swift */; };
|
||||
E652D8F3263D670900FC229B /* test_nonstandard_runlength.bz2 in Resources */ = {isa = PBXBuildFile; fileRef = E652D8F2263D670900FC229B /* test_nonstandard_runlength.bz2 */; };
|
||||
E652D8F5263D678000FC229B /* test_nonstandard_runlength.answer in Resources */ = {isa = PBXBuildFile; fileRef = E652D8F4263D678000FC229B /* test_nonstandard_runlength.answer */; };
|
||||
E66F36242538726E00076A6E /* test_empty.lzma in Resources */ = {isa = PBXBuildFile; fileRef = E66F36232538726E00076A6E /* test_empty.lzma */; };
|
||||
@@ -439,6 +440,7 @@
|
||||
06FEAD911F54B9CD00AD016E /* EncodingTree.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = EncodingTree.swift; path = Sources/Common/CodingTree/EncodingTree.swift; sourceTree = SOURCE_ROOT; };
|
||||
06FED40B1DD7717E0013DFB2 /* BZip2.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BZip2.swift; sourceTree = "<group>"; };
|
||||
E648151C26A889B8009261F0 /* TarHeader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TarHeader.swift; sourceTree = "<group>"; };
|
||||
E64F71BB26AAFD6A008BB308 /* Data+Tar.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Data+Tar.swift"; sourceTree = "<group>"; };
|
||||
E652D8F2263D670900FC229B /* test_nonstandard_runlength.bz2 */ = {isa = PBXFileReference; lastKnownFileType = file; path = test_nonstandard_runlength.bz2; sourceTree = "<group>"; };
|
||||
E652D8F4263D678000FC229B /* test_nonstandard_runlength.answer */ = {isa = PBXFileReference; lastKnownFileType = file; path = test_nonstandard_runlength.answer; sourceTree = "<group>"; };
|
||||
E66F36232538726E00076A6E /* test_empty.lzma */ = {isa = PBXFileReference; lastKnownFileType = file; path = test_empty.lzma; sourceTree = "<group>"; };
|
||||
@@ -641,6 +643,7 @@
|
||||
0651FEC11F8E2E9100C49646 /* ContainerEntryType+Tar.swift */,
|
||||
0656B82A1F8A979A00111605 /* ByteReader+Tar.swift */,
|
||||
06CFF6B12078C5A5003B8375 /* TarEntryInfoProvider.swift */,
|
||||
E64F71BB26AAFD6A008BB308 /* Data+Tar.swift */,
|
||||
);
|
||||
path = TAR;
|
||||
sourceTree = "<group>";
|
||||
@@ -1112,6 +1115,7 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
061C06521F0E904600832F0C /* ZipEndOfCentralDirectory.swift in Sources */,
|
||||
E64F71BC26AAFD6A008BB308 /* Data+Tar.swift in Sources */,
|
||||
06BB8F301E0C2C720079FB9E /* LZMA2.swift in Sources */,
|
||||
0620F4C31F8E24B6001C9B7A /* CompressionAlgorithm.swift in Sources */,
|
||||
06955E491F65C761004D5D79 /* BZip2+Lengths.swift in Sources */,
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
// Copyright (c) 2021 Timofey Solomko
|
||||
// Licensed under MIT License
|
||||
//
|
||||
// See LICENSE for license information
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Data {
|
||||
|
||||
@inline(__always)
|
||||
mutating func appendAsTarBlock(_ data: Data) {
|
||||
self.append(data)
|
||||
let paddingSize = data.count.roundTo512() - data.count
|
||||
self.append(Data(count: paddingSize))
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user