diff --git a/src/qemu_conf.c b/src/qemu_conf.c index 882f9f9145..0d498c2ed6 100644 --- a/src/qemu_conf.c +++ b/src/qemu_conf.c @@ -554,12 +554,22 @@ qemudGetOldMachines(const char *ostype, for (i = 0; i < old_caps->nguests; i++) { virCapsGuestPtr guest = old_caps->guests[i]; + int j; if (!STREQ(ostype, guest->ostype) || !STREQ(arch, guest->arch.name) || wordsize != guest->arch.wordsize) continue; + for (j = 0; j < guest->arch.ndomains; j++) { + virCapsGuestDomainPtr dom = guest->arch.domains[j]; + + if (qemudGetOldMachinesFromInfo(&dom->info, + emulator, emulator_mtime, + machines, nmachines)) + return 1; + } + if (qemudGetOldMachinesFromInfo(&guest->arch.defaultInfo, emulator, emulator_mtime, machines, nmachines))