Modify

Opened 11 months ago

Last modified 9 days ago

#7795 assigned defect

Conflation plugin: NPE when deleting matches

Reported by: Cobra Owned by: joshdoe
Priority: blocker Component: Plugin conflation
Version: latest Keywords: template_report
Cc: huftis

Description

What steps will reproduce the problem?

  1. create matches
  2. select all matches
  3. delete them

What is the expected result?
They get deleted.

What happens instead?
NPE, nothing else.

Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2012-06-18 01:31:06
Last Changed Author: Don-vip
Revision: 5283
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2012-06-17 18:26:55 +0200 (Sun, 17 Jun 2012)
Last Changed Rev: 5283

Identification: JOSM/1.5 (5283 en)
Memory Usage: 731 MB / 3640 MB (63 MB allocated, but free)
Java version: 1.7.0_05, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Operating system: Linux
Dataset consistency test: No problems found

Plugin: FastDraw (28412)
Plugin: FixAddresses (28412)
Plugin: HouseNumberTaggingTool (28412)
Plugin: ImportImagePlugin (28412)
Plugin: InfoMode (27981)
Plugin: PicLayer (27883)
Plugin: alignways (28412)
Plugin: buildings_tools (28412)
Plugin: conflation (0.1.6)
Plugin: contourmerge (1003)
Plugin: jts (28415)
Plugin: licensechange (28412)
Plugin: measurement (28412)
Plugin: mirrored_download (28418)
Plugin: openstreetbugs (28412)
Plugin: openvisible (28412)
Plugin: pbf (28412)
Plugin: pdfimport (27867)
Plugin: proj4j (28412)
Plugin: restart (28438)
Plugin: reverter (28412)
Plugin: routing (28412)
Plugin: terracer (28412)
Plugin: undelete (28416)
Plugin: utilsplugin2 (28412)

java.lang.NullPointerException
	at org.openstreetmap.josm.plugins.conflation.ConflationToggleDialog.getSelectedReferencePrimitives(ConflationToggleDialog.java:211)
	at org.openstreetmap.josm.plugins.conflation.ConflationToggleDialog.getAllSelectedPrimitives(ConflationToggleDialog.java:236)
	at org.openstreetmap.josm.plugins.conflation.ConflationToggleDialog.access$200(ConflationToggleDialog.java:40)
	at org.openstreetmap.josm.plugins.conflation.ConflationToggleDialog$SelectListSelectionAction.updateEnabledState(ConflationToggleDialog.java:682)
	at org.openstreetmap.josm.plugins.conflation.ConflationToggleDialog$SelectListSelectionAction.valueChanged(ConflationToggleDialog.java:687)
	at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:184)
	at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:164)
	at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:211)
	at javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:405)
	at javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:415)
	at javax.swing.DefaultListSelectionModel.removeSelectionIntervalImpl(DefaultListSelectionModel.java:576)
	at javax.swing.DefaultListSelectionModel.clearSelection(DefaultListSelectionModel.java:420)
	at org.openstreetmap.josm.plugins.conflation.ConflationToggleDialog.simpleMatchSelectionChanged(ConflationToggleDialog.java:187)
	at org.openstreetmap.josm.plugins.conflation.SimpleMatchList.fireSelectionChanged(SimpleMatchList.java:160)
	at org.openstreetmap.josm.plugins.conflation.SimpleMatchList.removeAll(SimpleMatchList.java:139)
	at org.openstreetmap.josm.plugins.conflation.ConflationToggleDialog$RemoveMatchCommand.executeCommand(ConflationToggleDialog.java:410)
	at org.openstreetmap.josm.data.UndoRedoHandler.addNoRedraw(UndoRedoHandler.java:36)
	at org.openstreetmap.josm.data.UndoRedoHandler.add(UndoRedoHandler.java:58)
	at org.openstreetmap.josm.plugins.conflation.ConflationToggleDialog$RemoveAction.actionPerformed(ConflationToggleDialog.java:483)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
	at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
	at java.awt.Component.processMouseEvent(Component.java:6505)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
	at java.awt.Component.processEvent(Component.java:6270)
	at java.awt.Container.processEvent(Container.java:2229)
	at java.awt.Component.dispatchEventImpl(Component.java:4861)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Component.dispatchEvent(Component.java:4687)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
	at java.awt.Container.dispatchEventImpl(Container.java:2273)
	at java.awt.Window.dispatchEventImpl(Window.java:2719)
	at java.awt.Component.dispatchEvent(Component.java:4687)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:703)
	at java.awt.EventQueue.access$000(EventQueue.java:102)
	at java.awt.EventQueue$3.run(EventQueue.java:662)
	at java.awt.EventQueue$3.run(EventQueue.java:660)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.awt.EventQueue$4.run(EventQueue.java:676)
	at java.awt.EventQueue$4.run(EventQueue.java:674)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:673)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)

Attachments (0)

Change History (7)

comment:1 Changed 11 months ago by Cobra

  • Priority changed from major to blocker

This renders JOSM quite unusable afterwards. It's not possible to delete layers or even close josm.

comment:2 Changed 11 months ago by Cobra

Update: this happens when deleting or conflating the last remaining match in the list.

Last edited 11 months ago by Cobra (previous) (diff)

comment:3 follow-up: Changed 11 months ago by joshdoe

  • Status changed from new to assigned

Thanks for the report, I'll try and look at this soon, it seems to be a simple fix.

comment:4 in reply to: ↑ 3 Changed 9 months ago by Don-vip

Replying to joshdoe:

I'll try and look at this soon, it seems to be a simple fix.

Any update ? :)

comment:5 Changed 4 weeks ago by Don-vip

Josh, are you still maintaining this plugin ?

comment:6 Changed 9 days ago by Don-vip

Ticket #8498 has been marked as a duplicate of this ticket.

comment:7 Changed 9 days ago by Don-vip

  • Cc huftis added

Another description in #8498.

Add Comment

Modify Ticket

Change Properties
<Author field>
Action
as assigned .
as The resolution will be set. Next status will be 'closed'.
to The owner will be changed from joshdoe. Next status will be 'new'.
Next status will be 'needinfo'.The owner will change to Cobra
as duplicate The resolution will be set to duplicate. Next status will be 'closed'.The specified ticket will be cross-referenced with this ticket
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.