Modify

Opened 10 years ago

Last modified 10 years ago

#8489 new defect

IllegalStateException deleting some nodes

Reported by: skyper Owned by: team
Priority: normal Milestone:
Component: Core Version: latest
Keywords: template_report Cc:

Description (last modified by skyper)

What steps will reproduce the problem?

  1. revert a changeset
  2. add a node to a new layer outside of download area of 1.
  3. merge layers on "new layer"
  4. try to delete node id:0 outside download area see below

What is the expected result?

It should be always possible to delete nodes with id=0

What happens instead?

IllegalStateException

Please provide any additional information below. Attach a screenshot if
possible.

Can test a bit more later but problem seems to be the download area.

Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2013-03-04 02:31:43
Last Changed Author: akks
Revision: 5756
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2013-03-03 21:20:18 +0100 (Sun, 03 Mar 2013)
Last Changed Rev: 5756

Identification: JOSM/1.5 (5756 de)
Memory Usage: 103 MB / 643 MB (49 MB allocated, but free)
Java version: 1.6.0_27, Sun Microsystems Inc., OpenJDK 64-Bit Server VM
Operating system: Linux
Dataset consistency test: No problems found

Plugin: mirrored_download (29210)
Plugin: reverter (29296)
Plugin: utilsplugin2 (29241)
Plugin: wikipedia (29330)

java.lang.IllegalStateException: Ein Objekt mit ID=0 darf nicht unsichtbar sein.
	at org.openstreetmap.josm.data.osm.AbstractPrimitive.setVisible(AbstractPrimitive.java:396)
	at org.openstreetmap.josm.data.osm.OsmPrimitive.saveCommonAttributes(OsmPrimitive.java:1161)
	at org.openstreetmap.josm.data.osm.Node.save(Node.java:251)
	at org.openstreetmap.josm.data.osm.Node.save(Node.java:16)
	at org.openstreetmap.josm.command.DeleteCommand.executeCommand(DeleteCommand.java:120)
	at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:54)
	at org.openstreetmap.josm.data.UndoRedoHandler.addNoRedraw(UndoRedoHandler.java:36)
	at org.openstreetmap.josm.data.UndoRedoHandler.add(UndoRedoHandler.java:58)
	at org.openstreetmap.josm.actions.mapmode.DeleteAction.doActionPerformed(DeleteAction.java:152)
	at org.openstreetmap.josm.actions.DeleteAction.actionPerformed(DeleteAction.java:28)
	at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1660)
	at javax.swing.JComponent.processKeyBinding(JComponent.java:2851)
	at javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:285)
	at javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:247)
	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:6065)
	at java.awt.Container.processEvent(Container.java:2045)
	at java.awt.Component.dispatchEventImpl(Component.java:4649)
	at java.awt.Container.dispatchEventImpl(Container.java:2103)
	at java.awt.Component.dispatchEvent(Component.java:4475)
	at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1879)
	at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:770)
	at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1046)
	at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:913)
	at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:735)
	at java.awt.Component.dispatchEventImpl(Component.java:4519)
	at java.awt.Container.dispatchEventImpl(Container.java:2103)
	at java.awt.Window.dispatchEventImpl(Window.java:2587)
	at java.awt.Component.dispatchEvent(Component.java:4475)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:675)
	at java.awt.EventQueue.access$300(EventQueue.java:96)
	at java.awt.EventQueue$2.run(EventQueue.java:634)
	at java.awt.EventQueue$2.run(EventQueue.java:632)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:116)
	at java.awt.EventQueue$3.run(EventQueue.java:648)
	at java.awt.EventQueue$3.run(EventQueue.java:646)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:645)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:13

Attachments (0)

Change History (3)

comment:1 Changed 10 years ago by skyper

Priority: normalmajor

Ok, I can reproduce it. Please forget description above.

  1. open new layer
  2. revert a changeset
  3. unglue first node of a way
  4. delete the new node

Strange after the exception the way does not contain the node anymore but the node still exists.

Did reproduce with changeset 14914753 and way 42220645.

comment:2 Changed 10 years ago by skyper

Description: modified (diff)

comment:3 Changed 10 years ago by skyper

Priority: majornormal

Saving the data to a file after merging seems to solve the problem.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The owner will remain team.
as The resolution will be set.
to The owner will be changed from team to the specified user.
The owner will change to skyper
as duplicate The resolution will be set to duplicate.The specified ticket will be cross-referenced with this ticket
The owner will be changed from team to anonymous.

Add Comment


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

 
Note: See TracTickets for help on using tickets.