From 906176835c916708a5ac8b2f032706676cbbebb4 Mon Sep 17 00:00:00 2001 From: alena Date: Fri, 11 Feb 2011 12:05:24 -0800 Subject: [PATCH] Fixed NPE in deleteAccount code - when shutdown the network, always set reservation context with account/userCaller information --- .../src/com/cloud/network/NetworkManagerImpl.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java index 89e2a4e616d..598000f1843 100755 --- a/server/src/com/cloud/network/NetworkManagerImpl.java +++ b/server/src/com/cloud/network/NetworkManagerImpl.java @@ -1711,7 +1711,20 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag if (s_logger.isDebugEnabled()) { s_logger.debug("Sending network shutdown to " + element); } - element.shutdown(network, null); + + User caller = null; + Account owner = _accountMgr.getAccount(network.getAccountId()); + + UserContext ctx = UserContext.current(); + if (ctx == null) { + caller = _accountMgr.getSystemUser(); + } else { + caller = _accountMgr.getActiveUser(ctx.getCallerUserId()); + } + + ReservationContext context = new ReservationContextImpl(null, null, caller, owner); + + element.shutdown(network, context); } catch (ResourceUnavailableException e) { s_logger.warn("Unable to complete shutdown of the network due to element: " + element.getName(), e); success = false;