X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibmarklin%2Froute.cpp;fp=source%2Flibmarklin%2Froute.cpp;h=daa044f9b9b4054b774421df3e6ada5168f76c43;hb=e13742268b7030f8d6152858d39f1c6b43f94c88;hp=970c2d79dec63574691656f177af205208a3f751;hpb=c400ed779704cc802de977090594c3441c3e7093;p=r2c2.git diff --git a/source/libmarklin/route.cpp b/source/libmarklin/route.cpp index 970c2d7..daa044f 100644 --- a/source/libmarklin/route.cpp +++ b/source/libmarklin/route.cpp @@ -110,9 +110,6 @@ list dijkstra(Track &from, unsigned ep, const Pred &goal) } } - if(!final) - throw InvalidParameterValue("Could not find a route"); - list result; for(Node *node=final; node; node=node->prev) result.push_front(node->track); @@ -125,6 +122,9 @@ Route *create_route(Track &from, unsigned ep, const Pred &goal) { list tracks = dijkstra(from, ep, goal); + if(tracks.empty()) + return 0; + Route *route = new Route(from.get_layout()); for(list::iterator i=tracks.begin(); i!=tracks.end(); ++i) route->add_track(**i);