]> xenbits.xensource.com Git - libvirt.git/commitdiff
parallels: fix virDomainDef.features comparison
authorDmitry Guryanov <dguryanov@parallels.com>
Wed, 23 Apr 2014 14:35:00 +0000 (18:35 +0400)
committerDaniel P. Berrange <berrange@redhat.com>
Wed, 7 May 2014 13:56:39 +0000 (14:56 +0100)
virDomainDef.features became an array, so now we can't simply
compare one features variable to another. We need to compare
each each element from the array.

Signed-off-by: Dmitry Guryanov <dguryanov@parallels.com>
src/parallels/parallels_driver.c

index 848ed9f9fe20b2e54ac903f19e148d153165278b..41bb34b5af53f3fc7ac7132cca8a3ca57f11f152 100644 (file)
@@ -1955,6 +1955,7 @@ static int
 parallelsApplyChanges(virConnectPtr conn, virDomainObjPtr dom, virDomainDefPtr new)
 {
     char buf[32];
+    size_t i;
 
     virDomainDefPtr old = dom->def;
     parallelsDomObjPtr pdom = dom->privateData;
@@ -2131,11 +2132,13 @@ parallelsApplyChanges(virConnectPtr conn, virDomainObjPtr dom, virDomainDefPtr n
         return -1;
     }
 
-    if (old->features != new->features) {
-        virReportError(VIR_ERR_ARGUMENT_UNSUPPORTED, "%s",
-                       _("changing features is not supported "
-                         "by parallels driver"));
-        return -1;
+    for (i = 0; i < VIR_DOMAIN_FEATURE_LAST; i++) {
+        if (old->features[i] != new->features[i]) {
+            virReportError(VIR_ERR_ARGUMENT_UNSUPPORTED, "%s",
+                           _("changing features is not supported "
+                             "by parallels driver"));
+            return -1;
+        }
     }
 
     if (new->clock.offset != VIR_DOMAIN_CLOCK_OFFSET_UTC ||