1
Fork 0

Fix dispatch group and not all columns loading

This commit is contained in:
Joshua Goins 2021-09-16 18:41:54 -04:00
parent 861d478d89
commit bf0aa43b76

View file

@ -158,8 +158,6 @@ class Document: NSDocument {
let queue = DispatchQueue(label: "imageWork")
DispatchQueue.concurrentPerform(iterations: chunkPaths.count) { (i: Int) in
dispatchGroup.enter()
guard let threadArchive = Archive(data: self.data!, accessMode: Archive.AccessMode.read) else {
return
}
@ -212,12 +210,10 @@ class Document: NSDocument {
let image = NSImage(cgImage: cgimage, size: NSZeroSize)
queue.async(flags: .barrier) {
queue.async(group: dispatchGroup) {
layer.data.chunks[i].image = image
layer.data.chunks[i].x = x
layer.data.chunks[i].y = y
dispatchGroup.leave()
}
}
@ -251,7 +247,7 @@ class Document: NSDocument {
info.height = height!
columns = Int(ceil(Float(info.width) / Float(info.tileSize)))
rows = Int(ceil(Float(info.height) / Float(info.tileSize)))
rows = Int(ceil(Float(info.height) / Float(info.tileSize))) + 1 // TODO: lol why
if info.width % info.tileSize != 0 {
remainderWidth = (columns * info.tileSize) - info.width