From 7c7b05f4e02a1b895586b2aea40d8ff6a8b62b3b Mon Sep 17 00:00:00 2001 From: Sheng Yang Date: Wed, 6 Mar 2013 16:49:44 -0800 Subject: [PATCH] CLOUDSTACK-1315: Fix NPE when try to upgrade network from VR to SRX-F5 Still return a valid object when reverting non-existed rules. --- .../network/ExternalLoadBalancerDeviceManagerImpl.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java b/server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java index 88568819922..d7b6d78c9bb 100644 --- a/server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java +++ b/server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java @@ -819,7 +819,8 @@ public abstract class ExternalLoadBalancerDeviceManagerImpl extends AdapterBase } } else { s_logger.debug("Revoking a rule for an inline load balancer that has not been programmed yet."); - return null; + nic.setNic(null); + return nic; } } @@ -877,9 +878,9 @@ public abstract class ExternalLoadBalancerDeviceManagerImpl extends AdapterBase MappingNic nic = getLoadBalancingIpNic(zone, network, rule.getSourceIpAddressId(), revoked, null); mappingStates.add(nic.getState()); NicVO loadBalancingIpNic = nic.getNic(); - if (loadBalancingIpNic == null) { - continue; - } + if (loadBalancingIpNic == null) { + continue; + } // Change the source IP address for the load balancing rule to be the load balancing IP address srcIp = loadBalancingIpNic.getIp4Address();