From fceb3ca392ae620d3fff6440e75686a3fcb34b61 Mon Sep 17 00:00:00 2001 From: hakansa <43675540+hakansa@users.noreply.github.com> Date: Thu, 27 Mar 2025 19:31:04 +0800 Subject: [PATCH] [client] fix route handling for local peer state (#3586) --- client/internal/peer/status.go | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/client/internal/peer/status.go b/client/internal/peer/status.go index adf1fdd18..dc96118e3 100644 --- a/client/internal/peer/status.go +++ b/client/internal/peer/status.go @@ -586,9 +586,8 @@ func (d *Status) AddLocalPeerStateRoute(route, resourceId string) { defer d.mux.Unlock() pref, err := netip.ParsePrefix(route) - if err != nil { - log.Errorf("failed to parse prefix %s: %v", route, err) - return + if err == nil { + d.routeIDLookup.AddLocalRouteID(resourceId, pref) } if d.localPeer.Routes == nil { @@ -596,8 +595,6 @@ func (d *Status) AddLocalPeerStateRoute(route, resourceId string) { } d.localPeer.Routes[route] = struct{}{} - - d.routeIDLookup.AddLocalRouteID(resourceId, pref) } // RemoveLocalPeerStateRoute removes a route from the local peer state @@ -606,14 +603,11 @@ func (d *Status) RemoveLocalPeerStateRoute(route string) { defer d.mux.Unlock() pref, err := netip.ParsePrefix(route) - if err != nil { - log.Errorf("failed to parse prefix %s: %v", route, err) - return + if err == nil { + d.routeIDLookup.RemoveLocalRouteID(pref) } delete(d.localPeer.Routes, route) - - d.routeIDLookup.RemoveLocalRouteID(pref) } // CleanLocalPeerStateRoutes cleans all routes from the local peer state