diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index abf2b6bcd9..de54c2c02e 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -1524,7 +1524,7 @@ void virDomainDeviceDefFree(virDomainDeviceDefPtr def) if (!def) return; - switch (def->type) { + switch ((virDomainDeviceType) def->type) { case VIR_DOMAIN_DEVICE_DISK: virDomainDiskDefFree(def->data.disk); break; @@ -1561,6 +1561,13 @@ void virDomainDeviceDefFree(virDomainDeviceDefPtr def) case VIR_DOMAIN_DEVICE_REDIRDEV: virDomainRedirdevDefFree(def->data.redirdev); break; + case VIR_DOMAIN_DEVICE_NONE: + case VIR_DOMAIN_DEVICE_FS: + case VIR_DOMAIN_DEVICE_SMARTCARD: + case VIR_DOMAIN_DEVICE_CHR: + case VIR_DOMAIN_DEVICE_MEMBALLOON: + case VIR_DOMAIN_DEVICE_LAST: + break; } VIR_FREE(def);