Modify ↓
Opened 6 years ago
Closed 6 years ago
#17304 closed defect (duplicate)
NPE at WayConnectionTypeCalculator.makeLoopIfNeeded
Reported by: | anonymous | Owned by: | team |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Core | Version: | tested |
Keywords: | template_report relation | Cc: |
Description
What steps will reproduce the problem?
- open relation editor
- german: "Alle unvollständigen Elemente herunterladen"
- german: "Auf Lücke springen"
What is the expected result?
What happens instead?
unhandled exception
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: 2019-02-02 21:01:18 +0100 (Sat, 02 Feb 2019) Build-Date:2019-02-04 21:50:11 Revision:14760 Relative:URL: ^/trunk Identification: JOSM/1.5 (14760 de) Linux openSUSE 13.2 (Harlequin) (x86_64) Memory Usage: 540 MB / 1760 MB (233 MB allocated, but free) Java version: 1.8.0_111-b14, Oracle Corporation, OpenJDK 64-Bit Server VM Screen: :0.0 2560x1600 Maximum Screen Size: 2560x1600 Java package: java-1_8_0-openjdk:x86_64-1.8.0.111 Dataset consistency test: No problems found Plugins: + Mapillary (v1.5.17) + apache-commons (34506) + apache-http (34632) + jna (34867) Last errors/warnings: - W: No configuration settings found. Using hardcoded default values for all pools. - E: Handled by bug report queue: java.lang.NullPointerException === REPORTED CRASH DATA === BugReportExceptionHandler#handleException: No data collected. Warning issued by: BugReportExceptionHandler#handleException === STACK TRACE === Thread: AWT-EventQueue-1 (17) of main java.lang.NullPointerException at org.openstreetmap.josm.gui.dialogs.relation.sort.WayConnectionTypeCalculator.makeLoopIfNeeded(WayConnectionTypeCalculator.java:144) at org.openstreetmap.josm.gui.dialogs.relation.sort.WayConnectionTypeCalculator.updateLinksFor(WayConnectionTypeCalculator.java:73) at org.openstreetmap.josm.gui.dialogs.relation.sort.WayConnectionTypeCalculator.updateLinks(WayConnectionTypeCalculator.java:49) at org.openstreetmap.josm.gui.dialogs.relation.MemberTableModel.getWayConnection(MemberTableModel.java:843) at org.openstreetmap.josm.gui.dialogs.relation.MemberTable$ZoomToGapAction.getConnectionType(MemberTable.java:223) at org.openstreetmap.josm.gui.dialogs.relation.MemberTable$ZoomToGapAction.hasGap(MemberTable.java:230) at org.openstreetmap.josm.gui.dialogs.relation.MemberTable$ZoomToGapAction.updateEnabledState(MemberTable.java:253) at org.openstreetmap.josm.gui.dialogs.relation.MemberTable$ZoomToGapAction.valueChanged(MemberTable.java:258) 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.addSelectionInterval(DefaultListSelectionModel.java:518) at org.openstreetmap.josm.gui.dialogs.relation.MemberTableModel.addToSelectedMembers(MemberTableModel.java:691) at org.openstreetmap.josm.gui.dialogs.relation.MemberTableModel.setSelectedMembersIdx(MemberTableModel.java:661) at org.openstreetmap.josm.gui.dialogs.relation.MemberTableModel.setSelectedMembers(MemberTableModel.java:640) at org.openstreetmap.josm.gui.dialogs.relation.MemberTableModel.selectionChanged(MemberTableModel.java:120) at org.openstreetmap.josm.data.osm.event.SelectionEventManager$DataListenerInfo.fire(SelectionEventManager.java:57) at org.openstreetmap.josm.data.osm.event.SelectionEventManager.fireEvent(SelectionEventManager.java:159) at org.openstreetmap.josm.data.osm.event.SelectionEventManager.selectionChanged(SelectionEventManager.java:148) at org.openstreetmap.josm.data.osm.DataSet.lambda$doSelectionChange$5(DataSet.java:684) at org.openstreetmap.josm.tools.ListenerList.fireEvent(ListenerList.java:150) at org.openstreetmap.josm.data.osm.DataSet.doSelectionChange(DataSet.java:684) at org.openstreetmap.josm.data.osm.DataSet.setSelected(DataSet.java:615) at org.openstreetmap.josm.data.osm.DataSet.setSelected(DataSet.java:611) at org.openstreetmap.josm.gui.dialogs.relation.MemberTable$ZoomToGapAction.actionPerformed(MemberTable.java:244) 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.AbstractButton.doClick(AbstractButton.java:376) at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833) at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877) at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289) at java.awt.Component.processMouseEvent(Component.java:6533) at javax.swing.JComponent.processMouseEvent(JComponent.java:3315) at java.awt.Component.processEvent(Component.java:6298) at java.awt.Container.processEvent(Container.java:2236) at java.awt.Component.dispatchEventImpl(Component.java:4889) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466) at java.awt.Container.dispatchEventImpl(Container.java:2280) at java.awt.Window.dispatchEventImpl(Window.java:2746) at java.awt.Component.dispatchEvent(Component.java:4711) 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:76) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.awt.EventQueue$4.run(EventQueue.java:729) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at org.GNOME.Accessibility.AtkWrapper$4.dispatchEvent(AtkWrapper.java:563) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) 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 (5)
comment:1 by , 6 years ago
comment:2 by , 6 years ago
Keywords: | relation added |
---|---|
Owner: | changed from | to
Status: | new → needinfo |
Summary: | relation editor → NPE at WayConnectionTypeCalculator.makeLoopIfNeeded |
comment:3 by , 6 years ago
Owner: | changed from | to
---|---|
Status: | needinfo → new |
The WayConnectionTypeCalculator
class is clearly asking for trouble:
for (int i = 0; i < members.size(); ++i) { con.add(null); }
loop = determineDirection(i, con.get(i).direction, firstGroupIdx) == con.get(firstGroupIdx).direction; // NPE here
comment:5 by , 6 years ago
Resolution: | → duplicate |
---|---|
Status: | new → closed |
Note:
See TracTickets
for help on using tickets.
Please tell us the relation id