From d259230e0524a3be74113a9e15216bac8617c8fe Mon Sep 17 00:00:00 2001 From: pablorevilla-meshtastic Date: Fri, 17 Apr 2026 15:26:53 -0700 Subject: [PATCH] fixed issue reported on issue #143 --- meshview/web.py | 4 ++++ meshview/web_api/api.py | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/meshview/web.py b/meshview/web.py index 41efc28..e8f7f25 100644 --- a/meshview/web.py +++ b/meshview/web.py @@ -354,6 +354,8 @@ async def graph_traceroute(request): node_ids = set() for tr in traceroutes: route = decode_payload.decode_payload(PortNum.TRACEROUTE_APP, tr.route) + if route is None: + continue node_ids.add(tr.gateway_node_id) for node_id in route.route: node_ids.add(node_id) @@ -379,6 +381,8 @@ async def graph_traceroute(request): if tr.done and dest: continue route = decode_payload.decode_payload(PortNum.TRACEROUTE_APP, tr.route) + if route is None: + continue path = [packet.from_node_id] path.extend(route.route) if tr.done: diff --git a/meshview/web_api/api.py b/meshview/web_api/api.py index 6c14d2d..4ba138c 100644 --- a/meshview/web_api/api.py +++ b/meshview/web_api/api.py @@ -533,6 +533,8 @@ async def api_edges(request): route = decode_payload.decode_payload(PortNum.TRACEROUTE_APP, tr.route) except Exception: continue + if route is None or tr.packet is None: + continue path = [tr.packet.from_node_id] + list(route.route) path.append(tr.packet.to_node_id if tr.done else tr.gateway_node_id) @@ -834,6 +836,8 @@ async def api_traceroute(request): # -------------------------------------------- for idx, tr in enumerate(traceroutes): route = decode_payload.decode_payload(PortNum.TRACEROUTE_APP, tr.route) + if route is None: + continue forward_list = list(route.route) reverse_list = list(route.route_back)