From 5831c5201ddbdaf0daf2a32f0ff801ae5fb7ec86 Mon Sep 17 00:00:00 2001 From: Timofey Solomko Date: Sun, 30 Jul 2017 18:36:07 +0300 Subject: [PATCH] Add encryptionNotSupported error for 7z --- Sources/7zError.swift | 1 + Sources/7zFolder.swift | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/Sources/7zError.swift b/Sources/7zError.swift index 70bd936e..3fc88cbd 100644 --- a/Sources/7zError.swift +++ b/Sources/7zError.swift @@ -39,4 +39,5 @@ public enum SevenZipError: Error { case noPackInfoFound case streamOverread case dataIsUnavailable + case encryptionNotSupported } diff --git a/Sources/7zFolder.swift b/Sources/7zFolder.swift index 2ab478ec..89db5b3a 100644 --- a/Sources/7zFolder.swift +++ b/Sources/7zFolder.swift @@ -166,7 +166,11 @@ class SevenZipFolder { try lzmaDecoder.decodeLZMA(unpackSize, properties[0], dictionarySize) decodedData = Data(bytes: lzmaDecoder.out) } else { - throw SevenZipError.compressionNotSupported + if coder.id[0] == 0x06 { + throw SevenZipError.encryptionNotSupported + } else { + throw SevenZipError.compressionNotSupported + } } guard decodedData.count == unpackSize