diff --git a/Configuration/UTMQemuConfiguration+Arguments.swift b/Configuration/UTMQemuConfiguration+Arguments.swift index cef538764..600e41091 100644 --- a/Configuration/UTMQemuConfiguration+Arguments.swift +++ b/Configuration/UTMQemuConfiguration+Arguments.swift @@ -505,6 +505,10 @@ import Virtualization // for getting network interfaces if system.architecture == .aarch64 && emulatedCpuCount.0 > 8 { properties = properties.appendingDefaultPropertyName("gic-version", value: "3") } + // Workaround for SPICE WebDAV crashes on ARM64 virtualization + if system.architecture == .aarch64 && isHypervisorUsed { + properties = properties.appendingDefaultPropertyName("its", value: "off") + } } if isClassicMacM68K { if sound.contains(where: { $0.hardware.rawValue == QEMUSoundDevice_m68k.asc.rawValue }) { diff --git a/Services/UTMSpiceIO.m b/Services/UTMSpiceIO.m index f8c9f687a..a69995384 100644 --- a/Services/UTMSpiceIO.m +++ b/Services/UTMSpiceIO.m @@ -297,6 +297,8 @@ - (void)changeSharedDirectory:(NSURL *)url { - (void)startSharingDirectory { if (self.sharedDirectory) { UTMLog(@"setting share directory to %@", self.sharedDirectory.path); + UTMLog(@"directory exists: %@", [[NSFileManager defaultManager] fileExistsAtPath:self.sharedDirectory.path] ? @"YES" : @"NO"); + UTMLog(@"read-only mode: %@", (self.options & UTMSpiceIOOptionsIsShareReadOnly) ? @"YES" : @"NO"); [self.sharedDirectory startAccessingSecurityScopedResource]; [self.spiceConnection.session setSharedDirectory:self.sharedDirectory.path readOnly:(self.options & UTMSpiceIOOptionsIsShareReadOnly) == UTMSpiceIOOptionsIsShareReadOnly]; }