﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
7987	NPE when selecting a zero-node way	Cobra	team	"What steps will reproduce the problem?
 1. find a way without nodes (e.g. download an earlier version of a deleted way)
 2. select it (via search)
 3. watch the measurement plugin crash

What is the expected result?[[BR]]
nothing. maybe some NaN instead of numbers.

What happens instead?[[BR]]
said NPE.

{{{
Build-Date: 2012-08-21 10:50:43
Revision: 5467
Is-Local-Build: true

Identification: JOSM/1.5 (5467 SVN en)
Memory Usage: 355 MB / 3640 MB (220 MB allocated, but free)
Java version: 1.6.0_33, Sun Microsystems Inc., Java HotSpot(TM) 64-Bit Server VM
Operating system: Linux

Dataset consistency test:
[SEARCH WAYS] {Way id=167442827 version=2 VT nodes=[{Node id=1852604401 version=0 IV }, {Node id=1852604399 version=0 IV }, {Node id=1852604396 version=0 IV }, {Node id=1788382770 version=0 IV }, {Node id=1779606994 version=0 IV }, {Node id=1788382772 version=0 IV }, {Node id=1852604401 version=0 IV }]} not found using Dataset.searchWays()


Plugin: FastDraw (28412)
Plugin: FixAddresses (28412)
Plugin: HouseNumberTaggingTool (28412)
Plugin: ImportImagePlugin (28412)
Plugin: InfoMode (27981)
Plugin: PicLayer (28559)
Plugin: alignways (28412)
Plugin: buildings_tools (28529)
Plugin: conflation (0.1.6)
Plugin: contourmerge (1003)
Plugin: jts (28415)
Plugin: measurement (28412)
Plugin: mirrored_download (28418)
Plugin: openstreetbugs (28412)
Plugin: openvisible (28412)
Plugin: pbf (28412)
Plugin: pdfimport (28448)
Plugin: proj4j (28412)
Plugin: restart (28438)
Plugin: reverter (28535)
Plugin: routing (28568)
Plugin: terracer (28412)
Plugin: undelete (28501)
Plugin: utilsplugin2 (28556)

java.lang.NullPointerException
	at org.openstreetmap.josm.plugins.measurement.MeasurementDialog$2.selectionChanged(MeasurementDialog.java:140)
	at org.openstreetmap.josm.data.osm.DataSet.fireSelectionChanged(DataSet.java:442)
	at org.openstreetmap.josm.data.osm.DataSet.setSelected(DataSet.java:615)
	at org.openstreetmap.josm.data.osm.DataSet.setSelected(DataSet.java:626)
	at org.openstreetmap.josm.actions.search.SearchAction.search(SearchAction.java:578)
	at org.openstreetmap.josm.actions.search.SearchAction.searchWithHistory(SearchAction.java:469)
	at org.openstreetmap.josm.actions.search.SearchAction.search(SearchAction.java:456)
	at org.openstreetmap.josm.actions.search.SearchAction.actionPerformed(SearchAction.java:132)
	at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1639)
	at javax.swing.JComponent.processKeyBinding(JComponent.java:2851)
	at javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:267)
	at javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:229)
	at javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:2928)
	at javax.swing.JComponent.processKeyBindings(JComponent.java:2920)
	at javax.swing.JComponent.processKeyEvent(JComponent.java:2814)
	at java.awt.Component.processEvent(Component.java:6067)
	at java.awt.Container.processEvent(Container.java:2039)
	at java.awt.Component.dispatchEventImpl(Component.java:4653)
	at java.awt.Container.dispatchEventImpl(Container.java:2097)
	at java.awt.Component.dispatchEvent(Component.java:4481)
	at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1836)
	at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:712)
	at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:990)
	at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:855)
	at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:676)
	at java.awt.Component.dispatchEventImpl(Component.java:4525)
	at java.awt.Container.dispatchEventImpl(Container.java:2097)
	at java.awt.Window.dispatchEventImpl(Window.java:2482)
	at java.awt.Component.dispatchEvent(Component.java:4481)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:648)
	at java.awt.EventQueue.access$000(EventQueue.java:84)
	at java.awt.EventQueue$1.run(EventQueue.java:607)
	at java.awt.EventQueue$1.run(EventQueue.java:605)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
	at java.awt.EventQueue$2.run(EventQueue.java:621)
	at java.awt.EventQueue$2.run(EventQueue.java:619)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:618)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:12
}}}
"	defect	closed	normal		Plugin measurement		fixed	template_report	
