From 86ea3a1c12b6e745f38cd37829c20d6a54fa7358 Mon Sep 17 00:00:00 2001 From: kishan Date: Tue, 11 Oct 2011 12:03:59 +0530 Subject: [PATCH] bug 11672: While listing volumes, check for null Vm instance. Log error when Vm instance is null status 11672: resolved fixed --- .../src/com/cloud/api/ApiResponseHelper.java | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java index afdef2ed181..3a3fad40cd7 100755 --- a/server/src/com/cloud/api/ApiResponseHelper.java +++ b/server/src/com/cloud/api/ApiResponseHelper.java @@ -829,12 +829,18 @@ public class ApiResponseHelper implements ResponseGenerator { Long instanceId = volume.getInstanceId(); if (instanceId != null && volume.getState() != Volume.State.Destroy) { VMInstanceVO vm = ApiDBUtils.findVMInstanceById(instanceId); - volResponse.setVirtualMachineId(vm.getId()); - volResponse.setVirtualMachineName(vm.getHostName()); - UserVm userVm = ApiDBUtils.findUserVmById(vm.getId()); - if (userVm != null) { - volResponse.setVirtualMachineDisplayName(userVm.getDisplayName()); - volResponse.setVirtualMachineState(vm.getState().toString()); + if(vm != null){ + volResponse.setVirtualMachineId(vm.getId()); + volResponse.setVirtualMachineName(vm.getHostName()); + UserVm userVm = ApiDBUtils.findUserVmById(vm.getId()); + if (userVm != null) { + volResponse.setVirtualMachineDisplayName(userVm.getDisplayName()); + volResponse.setVirtualMachineState(vm.getState().toString()); + } else { + s_logger.error("User Vm with Id: "+instanceId+" does not exist for volume "+volume.getId()); + } + } else { + s_logger.error("Vm with Id: "+instanceId+" does not exist for volume "+volume.getId()); } }