]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: hotplug: Use typecasted enum in qemuDomainDetachDeviceDiskLive
authorPeter Krempa <pkrempa@redhat.com>
Fri, 15 Mar 2019 13:52:58 +0000 (14:52 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Fri, 15 Mar 2019 15:11:20 +0000 (16:11 +0100)
Use the correct type in switch and populate the missing cases.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
src/qemu/qemu_hotplug.c

index 0825b03a0d7c13cf8c0c0093608a81ae52e17775..92af85c3d30b1dc802d4390b5d429465515ac7df 100644 (file)
@@ -5375,7 +5375,7 @@ qemuDomainDetachDeviceDiskLive(virQEMUDriverPtr driver,
     }
     disk = vm->def->disks[idx];
 
-    switch (disk->device) {
+    switch ((virDomainDiskDevice) disk->device) {
     case VIR_DOMAIN_DISK_DEVICE_DISK:
     case VIR_DOMAIN_DISK_DEVICE_LUN:
         if (disk->bus == VIR_DOMAIN_DISK_BUS_VIRTIO)
@@ -5387,11 +5387,18 @@ qemuDomainDetachDeviceDiskLive(virQEMUDriverPtr driver,
             virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s",
                            _("This type of disk cannot be hot unplugged"));
         break;
-    default:
+
+    case VIR_DOMAIN_DISK_DEVICE_CDROM:
+    case VIR_DOMAIN_DISK_DEVICE_FLOPPY:
         virReportError(VIR_ERR_OPERATION_UNSUPPORTED,
                        _("disk device type '%s' cannot be detached"),
                        virDomainDiskDeviceTypeToString(disk->device));
         break;
+
+    case VIR_DOMAIN_DISK_DEVICE_LAST:
+    default:
+        virReportEnumRangeError(virDomainDiskDevice, disk->device);
+        break;
     }
 
     return -1;