From 219c19c8e7671a2f4b5bdbcee2186e0cd1111c13 Mon Sep 17 00:00:00 2001 From: Andrew Martinez Date: Mon, 8 Mar 2021 15:58:57 -0500 Subject: [PATCH] fix map passed by reference in shallow struct copy --- controller/env/sync.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/controller/env/sync.go b/controller/env/sync.go index b23c34687..0e80495fb 100644 --- a/controller/env/sync.go +++ b/controller/env/sync.go @@ -140,7 +140,15 @@ func (r *LockingRouterState) Values() RouterStateValues { r.lock.Lock() defer r.lock.Unlock() - return r.internal + ret := r.internal + + ret.Protocols = map[string]string{} + + for k, v := range r.internal.Protocols { + ret.Protocols[k] = v + } + + return ret } func (r *LockingRouterState) SetIsOnline(isOnline bool) {