1
Fork 0

Protect crashes against invalid Procreate documents

This commit is contained in:
Joshua Goins 2021-09-30 07:35:50 -04:00
parent 8113d13835
commit b87fe7e585

View file

@ -512,7 +512,12 @@ class Document: NSDocument {
ccgContext?.fill(info.cgRect)
let context = CIContext()
var masterImage = CIImage(cgImage: (ccgContext?.makeImage())!)
guard let cgImage = ccgContext?.makeImage() else {
return nil
}
var masterImage = CIImage(cgImage: cgImage)
var previousImage: CGImage? = nil
@ -571,8 +576,11 @@ class Document: NSDocument {
}
}
let cgImage = context.createCGImage(masterImage, from: info.cgRect, format: .RGBA8, colorSpace: info.colorSpace)!
var image = NSImage(cgImage: cgImage, size: info.nsSize)
guard let finalCgImage = context.createCGImage(masterImage, from: info.cgRect, format: .RGBA8, colorSpace: info.colorSpace) else {
return nil
}
var image = NSImage(cgImage: finalCgImage, size: info.nsSize)
if info.orientation == 3 {
image = image.imageRotatedByDegreess(degrees: 90)