diff --git a/Sources/BZip2/BurrowsWheeler.swift b/Sources/BZip2/BurrowsWheeler.swift index 664d3ed6..087e694b 100644 --- a/Sources/BZip2/BurrowsWheeler.swift +++ b/Sources/BZip2/BurrowsWheeler.swift @@ -30,18 +30,10 @@ class BurrowsWheeler { static func reverse(bytes: [UInt8], _ pointer: Int) -> [UInt8] { guard bytes.count > 0 else { return [] } + var resultBytes = [UInt8]() resultBytes.reserveCapacity(bytes.count) - var end = pointer - let T = bwt(transform: bytes) - for _ in 0.. [Int] { var counts = Array(repeating: 0, count: 256) for byte in bytes { counts[byte.toInt()] += 1 @@ -64,7 +56,12 @@ class BurrowsWheeler { base[char.toInt()] += 1 } - return pointers + var end = pointer + for _ in 0..