From 792dff1fb01a49ab9b415e919b54fa4a1edf1acf Mon Sep 17 00:00:00 2001 From: Yanqiang Miao Date: Thu, 22 Sep 2016 11:18:07 +0800 Subject: [PATCH] Replace two array with a map type, make it easier to understand. Signed-off-by: Yanqiang Miao update Signed-off-by: Yanqiang Miao update Signed-off-by: Yanqiang Miao Upstream-commit: 1989b1b58cc8c416e430a1fd824626b259dab5f6 Component: engine --- components/engine/daemon/container_operations.go | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/components/engine/daemon/container_operations.go b/components/engine/daemon/container_operations.go index 22883e0360..2705868ba9 100644 --- a/components/engine/daemon/container_operations.go +++ b/components/engine/daemon/container_operations.go @@ -501,23 +501,20 @@ func (daemon *Daemon) allocateNetwork(container *container.Container) error { } } - var ( - networks []string - epConfigs []*network.EndpointSettings - ) + // the intermediate map is necessary because "connectToNetwork" modifies "container.NetworkSettings.Networks" + networks := make(map[string]*network.EndpointSettings) for n, epConf := range container.NetworkSettings.Networks { if n == defaultNetName { continue } - networks = append(networks, n) - epConfigs = append(epConfigs, epConf) + networks[n] = epConf } - for i, epConf := range epConfigs { + for netName, epConf := range networks { cleanOperationalData(epConf) - if err := daemon.connectToNetwork(container, networks[i], epConf.EndpointSettings, updateSettings); err != nil { + if err := daemon.connectToNetwork(container, netName, epConf.EndpointSettings, updateSettings); err != nil { return err } }