mirror of
https://github.com/Whisky-App/Whisky.git
synced 2026-05-29 11:20:35 +00:00
Simplify PEFile init
This commit is contained in:
@@ -277,8 +277,8 @@ public struct PEFile: Hashable {
|
||||
}
|
||||
private let handle: FileHandle
|
||||
|
||||
public init(handle: FileHandle) throws {
|
||||
self.handle = handle
|
||||
public init(url: URL) throws {
|
||||
self.handle = try FileHandle(forReadingFrom: url)
|
||||
// Verify it is a PE file by checking for the PE header
|
||||
let offsetToPEHeader = handle.extract(UInt32.self, offset: 0x3C) ?? 0
|
||||
let peHeader = handle.extract(UInt32.self, offset: Int(offsetToPEHeader))
|
||||
|
||||
@@ -41,7 +41,7 @@ public class Program: Hashable {
|
||||
self.settings = ProgramSettings(bottleUrl: bottle.url, name: name)
|
||||
self.pinned = bottle.settings.pins.contains(where: { $0.url == url })
|
||||
do {
|
||||
self.peFile = try PEFile(handle: FileHandle(forReadingFrom: url))
|
||||
self.peFile = try PEFile(url: url)
|
||||
} catch {
|
||||
self.peFile = nil
|
||||
}
|
||||
|
||||
@@ -46,7 +46,7 @@ class ThumbnailProvider: QLThumbnailProvider {
|
||||
do {
|
||||
var image: NSImage?
|
||||
|
||||
let peFile = try PEFile(handle: try FileHandle(forReadingFrom: request.fileURL))
|
||||
let peFile = try PEFile(url: request.fileURL)
|
||||
image = peFile.bestIcon()
|
||||
|
||||
let reply: QLThumbnailReply = QLThumbnailReply.init(contextSize: thumbnailSize) { () -> Bool in
|
||||
|
||||
Reference in New Issue
Block a user