mirror of
https://github.com/netbirdio/netbird.git
synced 2026-10-20 20:39:08 +02:00
use policy ids deduping policies during union
Signed-off-by: Dmitri Dolguikh <dmitri.external@netbird.io>
This commit is contained in:
@@ -288,16 +288,16 @@ func unionPolicies(policies []*types.Policy, resourcePolicies map[string][]*type
|
|||||||
if len(resourcePolicies) == 0 {
|
if len(resourcePolicies) == 0 {
|
||||||
return policies
|
return policies
|
||||||
}
|
}
|
||||||
seen := make(map[*types.Policy]struct{}, len(policies))
|
seen := make(map[string]struct{}, len(policies))
|
||||||
out := make([]*types.Policy, 0, len(policies))
|
out := make([]*types.Policy, 0, len(policies))
|
||||||
for _, p := range policies {
|
for _, p := range policies {
|
||||||
if p == nil {
|
if p == nil {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if _, ok := seen[p]; ok {
|
if _, ok := seen[p.ID]; ok {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
seen[p] = struct{}{}
|
seen[p.ID] = struct{}{}
|
||||||
out = append(out, p)
|
out = append(out, p)
|
||||||
}
|
}
|
||||||
for _, list := range resourcePolicies {
|
for _, list := range resourcePolicies {
|
||||||
@@ -305,10 +305,10 @@ func unionPolicies(policies []*types.Policy, resourcePolicies map[string][]*type
|
|||||||
if p == nil {
|
if p == nil {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if _, ok := seen[p]; ok {
|
if _, ok := seen[p.ID]; ok {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
seen[p] = struct{}{}
|
seen[p.ID] = struct{}{}
|
||||||
out = append(out, p)
|
out = append(out, p)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user