File 5adfb347-qemu-honor-user-nvram-path.patch of Package libvirt.29155

commit 5adfb3472342741c443ac91dee0abb18b5a3d038
Author: Daniel P. Berrangé <berrange@redhat.com>
Date:   Wed Feb 23 12:47:42 2022 +0000

    qemu: honour user's nvram path when undefining VM
    
    When undefining a VM, we must optionally delete any NVRAM that might
    exist. When using firmware auto-select we always check the generated
    path, ignoring any user specified path.
    
    Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
    Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

Index: libvirt-8.0.0/src/qemu/qemu_driver.c
===================================================================
--- libvirt-8.0.0.orig/src/qemu/qemu_driver.c
+++ libvirt-8.0.0/src/qemu/qemu_driver.c
@@ -6607,11 +6607,10 @@ qemuDomainUndefineFlags(virDomainPtr dom
         }
     }
 
-    if (vm->def->os.firmware == VIR_DOMAIN_OS_DEF_FIRMWARE_EFI) {
+    if (vm->def->os.loader->nvram) {
+        nvram_path = g_strdup(vm->def->os.loader->nvram);
+    } else if (vm->def->os.firmware == VIR_DOMAIN_OS_DEF_FIRMWARE_EFI) {
         qemuDomainNVRAMPathFormat(cfg, vm->def, &nvram_path);
-    } else {
-        if (vm->def->os.loader)
-            nvram_path = g_strdup(vm->def->os.loader->nvram);
     }
 
     if (nvram_path && virFileExists(nvram_path)) {
openSUSE Build Service is sponsored by