diff --git a/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/VirtualMachineMO.java b/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/VirtualMachineMO.java index 742f33575f5..e53d14fc43b 100644 --- a/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/VirtualMachineMO.java +++ b/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/VirtualMachineMO.java @@ -3169,9 +3169,12 @@ public class VirtualMachineMO extends BaseMO { int deviceCount = 0; int ideDeviceUnitNumber = -1; - if (devices != null && devices.size() > 0) { + if (devices != null) { for (VirtualDevice device : devices) { - if (device instanceof VirtualDisk && (controllerKey == device.getControllerKey())) { + if (device.getControllerKey() == null || device.getControllerKey() != controllerKey) { + continue; + } + if (device instanceof VirtualDisk || device instanceof VirtualCdrom) { deviceCount++; ideDeviceUnitNumber = device.getUnitNumber(); }