]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: Move assignment of default emulator to the basic post parse callback
authorPeter Krempa <pkrempa@redhat.com>
Tue, 15 Aug 2017 13:16:20 +0000 (15:16 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Fri, 18 Aug 2017 13:07:44 +0000 (15:07 +0200)
src/qemu/qemu_domain.c

index 40608554c47375e82342cb6d7dcf7032748066dd..9e395aec918e5bfac54d7e4b8006e0fa88b8a0aa 100644 (file)
@@ -2924,9 +2924,23 @@ qemuDomainDefVerifyFeatures(const virDomainDef *def)
 }
 
 
+static int
+qemuDomainDefPostParseBasic(virDomainDefPtr def,
+                            virCapsPtr caps,
+                            void *opaque ATTRIBUTE_UNUSED)
+{
+    /* check for emulator and create a default one if needed */
+    if (!def->emulator &&
+        !(def->emulator = virDomainDefGetDefaultEmulator(def, caps)))
+        return -1;
+
+    return 0;
+}
+
+
 static int
 qemuDomainDefPostParse(virDomainDefPtr def,
-                       virCapsPtr caps,
+                       virCapsPtr caps ATTRIBUTE_UNUSED,
                        unsigned int parseFlags,
                        void *opaque,
                        void *parseOpaque)
@@ -2957,11 +2971,6 @@ qemuDomainDefPostParse(virDomainDefPtr def,
             goto cleanup;
     }
 
-    /* check for emulator and create a default one if needed */
-    if (!def->emulator &&
-        !(def->emulator = virDomainDefGetDefaultEmulator(def, caps)))
-        goto cleanup;
-
     if (qemuCaps) {
         virObjectRef(qemuCaps);
     } else {
@@ -3716,6 +3725,7 @@ qemuDomainDefAssignAddresses(virDomainDef *def,
 
 
 virDomainDefParserConfig virQEMUDriverDomainDefParserConfig = {
+    .domainPostParseBasicCallback = qemuDomainDefPostParseBasic,
     .devicesPostParseCallback = qemuDomainDeviceDefPostParse,
     .domainPostParseCallback = qemuDomainDefPostParse,
     .assignAddressesCallback = qemuDomainDefAssignAddresses,