Closed awilfox closed 2 years ago
@osy I'm fairly certain the cause of the crash is the ForEach
using a Range
and id of \.self
. I think there's some problem once in a while that SwiftUI can't track modifications because the list is identified by count not by the list of drives. (Which there isn't any available list of drives in the code)
Yeah I think I dealt with this exact crash before but it’s pretty bad code. The new Monterey changes should fix this for Apple VMs but still need a good way for the QEMU ones.
@osy I see what you mean. Should the drive be made an object instead of a dictionary?
Just wondering, is this code from the early days of UTM or what?
It was written before swiftui and so the swiftui code does not play well with a custom object wrapping around a dictionary of wrapped objects.
I see. So should the UTMConfiguration+Drives code be refactored to have a Drive object?
Reassigning to v3.0 because I forgot that the new UI basically already fixes this.
@osy how does it fix it?
Fixed in v3.0 redesign
Describe the issue I have a CD image, automatically-generated EFI vars, a kernel, and an initrd. I attempted to move the CD and EFI vars down below the kernel and initrd. The kernel managed to make it to the top but when I moved the CD below the EFI vars, UTM crashed.
Configuration
Crash log
Debug log (There was no QEMU execution involved in this crash.)
Upload VM