﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
18696	IAE: graph must contain the end vertex (routing plugin)	anonymous	franpd	"==== What steps will reproduce the problem?
1. Add a routing layer
2. Add destination nodes
3. Move/delete destination nodes

==== What is the expected result?
The nodes should move/get deleted.

==== What happens instead?
Error pops up and nothing happens.

==== Please provide any additional information below. Attach a screenshot if possible.

{{{
URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2020-02-01 01:10:57 +0100 (Sat, 01 Feb 2020)
Build-Date:2020-02-01 00:12:46
Revision:15806
Relative:URL: ^/trunk

Identification: JOSM/1.5 (15806 en) Linux Ubuntu 16.04.6 LTS
Memory Usage: 836 MB / 1755 MB (420 MB allocated, but free)
Java version: 1.8.0_222-8u222-b10-1ubuntu1~16.04.1-b10, Private Build, OpenJDK 64-Bit Server VM
Screen: :0.0 1366x768
Maximum Screen Size: 1366x768
Java package: openjdk-8-jre:amd64-8u222-b10-1ubuntu1~16.04.1
libcommons-compress-java: libcommons-compress-java:all-1.10-2
libcommons-logging-java: libcommons-logging-java:all-1.2-1+build1
fonts-noto: fonts-noto:all-20160116-1
liboauth-signpost-java: liboauth-signpost-java:all-1.2.1.2-1.3
Dataset consistency test: No problems found

Plugins:
+ log4j (35092)
+ routing (35313)

Last errors/warnings:
- W: No configuration settings found.  Using hardcoded default values for all pools.
- E: Handled by bug report queue: java.lang.IllegalArgumentException: graph must contain the end vertex
- E: Handled by bug report queue: java.lang.IllegalArgumentException: graph must contain the end vertex


=== REPORTED CRASH DATA ===
MapView#paintLayer:
 - layer: RoutingLayer [name=Routing [central_roads.osm], associatedFile=null]

Warning issued by: MapView#paintLayer

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (16) of main
java.lang.IllegalArgumentException: graph must contain the end vertex
	at org.jgrapht.alg.DijkstraShortestPath.<init>(Unknown Source)
	at org.jgrapht.alg.DijkstraShortestPath.<init>(Unknown Source)
	at com.innovant.josm.jrt.core.RoutingGraph.applyAlgorithm(RoutingGraph.java:338)
	at com.innovant.josm.plugin.routing.RoutingModel.getRouteEdges(RoutingModel.java:118)
	at com.innovant.josm.plugin.routing.RoutingLayer.paint(RoutingLayer.java:246)
	at org.openstreetmap.josm.gui.layer.AbstractMapViewPaintable$CompatibilityModeLayerPainter.paint(AbstractMapViewPaintable.java:27)
	at org.openstreetmap.josm.gui.MapView.paintLayer(MapView.java:465)
	at org.openstreetmap.josm.gui.MapView.drawMapContent(MapView.java:554)
	at org.openstreetmap.josm.gui.MapView.paint(MapView.java:487)
	at javax.swing.JComponent.paintChildren(JComponent.java:889)
	at javax.swing.JComponent.paint(JComponent.java:1065)
	at javax.swing.JComponent.paintChildren(JComponent.java:889)
	at javax.swing.JSplitPane.paintChildren(JSplitPane.java:1047)
	at javax.swing.JComponent.paint(JComponent.java:1065)
	at javax.swing.JComponent.paintChildren(JComponent.java:889)
	at javax.swing.JComponent.paint(JComponent.java:1065)
	at javax.swing.JComponent.paintChildren(JComponent.java:889)
	at javax.swing.JComponent.paint(JComponent.java:1065)
	at javax.swing.JComponent.paintChildren(JComponent.java:889)
	at javax.swing.JComponent.paint(JComponent.java:1065)
	at javax.swing.JComponent.paintChildren(JComponent.java:889)
	at javax.swing.JComponent.paint(JComponent.java:1065)
	at javax.swing.JLayeredPane.paint(JLayeredPane.java:586)
	at javax.swing.JComponent.paintChildren(JComponent.java:889)
	at javax.swing.JComponent.paint(JComponent.java:1065)
	at javax.swing.JComponent.paintToOffscreen(JComponent.java:5210)
	at javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:290)
	at javax.swing.RepaintManager.paint(RepaintManager.java:1272)
	at javax.swing.JComponent._paintImmediately(JComponent.java:5158)
	at javax.swing.JComponent.paintImmediately(JComponent.java:4969)
	at javax.swing.RepaintManager$4.run(RepaintManager.java:831)
	at javax.swing.RepaintManager$4.run(RepaintManager.java:814)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:789)
	at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:738)
	at javax.swing.RepaintManager.access$1200(RepaintManager.java:64)
	at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1732)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
	at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
	at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235)
	at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233)
	at java.awt.Dialog.show(Dialog.java:1084)
	at java.awt.Component.show(Component.java:1671)
	at java.awt.Component.setVisible(Component.java:1623)
	at java.awt.Window.setVisible(Window.java:1014)
	at java.awt.Dialog.setVisible(Dialog.java:1005)
	at org.openstreetmap.josm.gui.HelpAwareOptionPane.doShowOptionDialog(HelpAwareOptionPane.java:347)
	at org.openstreetmap.josm.gui.HelpAwareOptionPane.showOptionDialog(HelpAwareOptionPane.java:283)
	at org.openstreetmap.josm.plugins.PluginHandler.lambda$askUpdateDisableKeepPluginAfterException$12(PluginHandler.java:1470)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at org.openstreetmap.josm.gui.util.GuiHelper.runInEDT(GuiHelper.java:199)
	at org.openstreetmap.josm.plugins.PluginHandler.askUpdateDisableKeepPluginAfterException(PluginHandler.java:1480)
	at org.openstreetmap.josm.plugins.PluginHandler.updateOrdisablePluginAfterException(PluginHandler.java:1551)
	at org.openstreetmap.josm.gui.bugreport.BugReportDialog.lambda$showFor$3(BugReportDialog.java:233)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
}}}
"	defect	new	normal		Plugin routing			template_report	
