summaryrefslogtreecommitdiff
path: root/navit/route.c
diff options
context:
space:
mode:
authormvglasow <michael -at- vonglasow.com>2018-06-05 16:37:11 +0200
committermvglasow <michael -at- vonglasow.com>2018-06-06 16:42:26 +0200
commit031900bf42aa6654465340c69256c9f8f9603ea0 (patch)
tree6820b4c8407a40f2202e5839f9423586d9ad25ba /navit/route.c
parent4e9b91bb3df7497e1cf7eb690f33b3d9eb60585e (diff)
downloadnavit-031900bf42aa6654465340c69256c9f8f9603ea0.tar.gz
Fix:route:Skip non-routable segments when looking for neighbors in LPA*
Signed-off-by: mvglasow <michael -at- vonglasow.com>
Diffstat (limited to 'navit/route.c')
-rw-r--r--navit/route.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/navit/route.c b/navit/route.c
index 292f2604a..a197d03c9 100644
--- a/navit/route.c
+++ b/navit/route.c
@@ -2134,10 +2134,14 @@ static void route_graph_compute_shortest_path(struct vehicleprofile * profile, s
/* in any case, update rhs of successors (nodes from which we can reach p_min via a single segment) */
for (s = p_min->start; s; s = s->start_next)
- if (route_value_seg(profile, NULL, s, -1) != INT_MAX)
+ if ((s->data.item.type < route_item_first) || (s->data.item.type > route_item_last))
+ continue;
+ else if (route_value_seg(profile, NULL, s, -1) != INT_MAX)
route_graph_point_update(profile, s->end, heap);
for (s = p_min->end; s; s = s->end_next)
- if (route_value_seg(profile, NULL, s, 1) != INT_MAX)
+ if ((s->data.item.type < route_item_first) || (s->data.item.type > route_item_last))
+ continue;
+ else if (route_value_seg(profile, NULL, s, 1) != INT_MAX)
route_graph_point_update(profile, s->start, heap);
}
}