From: Roopesh Chander Date: Sat, 9 Feb 2019 13:54:08 +0000 (+0530) Subject: Importing: Ignore case in matching file extensions inside zip files X-Git-Tag: 0.0.20190207-3~14 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0a3a5ee900336eb96fc72f6fbfec18091e4b873a;p=thirdparty%2Fwireguard-apple.git Importing: Ignore case in matching file extensions inside zip files Signed-off-by: Roopesh Chander --- diff --git a/WireGuard/WireGuard/ZipArchive/ZipArchive.swift b/WireGuard/WireGuard/ZipArchive/ZipArchive.swift index 9e28dc2..2cca880 100644 --- a/WireGuard/WireGuard/ZipArchive/ZipArchive.swift +++ b/WireGuard/WireGuard/ZipArchive/ZipArchive.swift @@ -42,6 +42,7 @@ class ZipArchive { static func unarchive(url: URL, requiredFileExtensions: [String]) throws -> [(fileBaseName: String, contents: Data)] { var results = [(fileBaseName: String, contents: Data)]() + var requiredFileExtensionsLowercased = requiredFileExtensions.map { $0.lowercased() } guard let zipFile = unzOpen64(url.path) else { throw ZipArchiveError.cantOpenInputZipFile @@ -70,7 +71,7 @@ class ZipArchive { let isDirectory = (lastChar == "/" || lastChar == "\\") let fileURL = URL(fileURLWithFileSystemRepresentation: fileNameBuffer, isDirectory: isDirectory, relativeTo: nil) - if !isDirectory && requiredFileExtensions.contains(fileURL.pathExtension) { + if !isDirectory && requiredFileExtensionsLowercased.contains(fileURL.pathExtension.lowercased()) { var unzippedData = Data() var bytesRead: Int32 = 0 repeat {