Modify

Opened 5 years ago

Closed 5 years ago

#17894 closed defect (fixed)

Moving two or more relation members results in re-arrangment

Reported by: skyper Owned by: team
Priority: major Milestone: 19.06
Component: Core Version: latest
Keywords: template_report relation manager regression Cc:

Description

What steps will reproduce the problem?

  1. open relation in relation manager
  2. select some member in the middle
  3. click move selected member down button

What is the expected result?

The selection is kept and the selected members are moved one position down in the list.

What happens instead?

The selected members are moved down and selection changes (jumps up).

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

If you select the top member the IndexOutOfBoundsException happens.

URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2019-07-08 01:14:04 +0200 (Mon, 08 Jul 2019)
Build-Date:2019-07-07 23:17:09
Revision:15234
Relative:URL: ^/trunk

Last errors/warnings:
- W: No configuration settings found.  Using hardcoded default values for all pools.
- E: Handled by bug report queue: java.lang.IndexOutOfBoundsException: bitIndex < 0: -1


=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (16) of main
java.lang.IndexOutOfBoundsException: bitIndex < 0: -1
	at java.util.BitSet.set(BitSet.java:444)
	at org.openstreetmap.josm.gui.dialogs.relation.MemberTableModel.move(MemberTableModel.java:283)
	at org.openstreetmap.josm.gui.util.ReorderableTableModel.moveDown(ReorderableTableModel.java:108)
	at org.openstreetmap.josm.gui.dialogs.relation.actions.MoveDownAction.actionPerformed(MoveDownAction.java:35)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
	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:6533)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6298)
	at java.awt.Container.processEvent(Container.java:2238)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2296)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4897)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4534)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4475)
	at java.awt.Container.dispatchEventImpl(Container.java:2282)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	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:80)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	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)

Attachments (0)

Change History (13)

comment:1 by skyper, 5 years ago

Regression happened yesterday as r15221 is working correct.

comment:2 by skyper, 5 years ago

Summary: relation manager:java.lang.IndexOutOfBoundsException: bitIndex < 0: -1 (members tab: selection jumps up when moving down)IOOBE at MemberTableModel.move: relation manager: members tab: selection jumps up when moving down)

comment:3 by skyper, 5 years ago

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

comment:4 by Don-vip, 5 years ago

Resolution: duplicate
Status: newclosed

Closed as duplicate of #17887.

comment:5 by Don-vip, 5 years ago

Problem fixed in r15235

in reply to:  5 ; comment:6 by skyper, 5 years ago

Resolution: duplicate
Status: closedreopened

Replying to Don-vip:

Problem fixed in r15235

This is not completely fixed, yet. It works for moving up, but not all the time for moving down.
I did test with simply three selected members.

  • moving twice down is changing the order wrong
  • moving first up and than down is wrong, too.
URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2019-07-09 01:01:06 +0200 (Tue, 09 Jul 2019)
Build-Date:2019-07-08 23:02:00
Revision:15237
Relative:URL: ^/trunk

in reply to:  6 comment:7 by skyper, 5 years ago

Replying to skyper:

Replying to Don-vip:

Problem fixed in r15235

This is not completely fixed, yet. It works for moving up, but not all the time for moving down.
I did test with simply three selected members.

  • moving twice down is changing the order wrong
  • moving first up and than down is wrong, too.

Easy to reproduce with the last three members:

  1. select the third and second last element
  2. move down

The last should be the third last with two members below selected.

Instead only the top of selection is moved all the way down and selection changes.

comment:8 by skyper, 5 years ago

Priority: blockermajor

comment:9 by Don-vip, 5 years ago

Milestone: 19.07

comment:10 by Don-vip, 5 years ago

Keywords: regression added

comment:11 by Don-vip, 5 years ago

Milestone: 19.0719.06
Summary: IOOBE at MemberTableModel.move: relation manager: members tab: selection jumps up when moving down)Moving two or more relation members results in re-arrangment

Looks like we need a new hotfix

comment:12 by Don-vip, 5 years ago

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

comment:13 by Don-vip, 5 years ago

Resolution: fixed
Status: reopenedclosed

In 15238/josm:

fix #17894 - fix moving of 2+ selected relation members, events optimization

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain team.
as The resolution will be set.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.