From cb73c1e1faeccba2f017cd44615da2a3c8cbc8b1 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 11f2f3c8f82..b5fde732429 100755 --- a/server/src/com/cloud/network/NetworkManagerImpl.java +++ b/server/src/com/cloud/network/NetworkManagerImpl.java @@ -1710,7 +1710,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;