Opened 4 years ago

Last modified 4 years ago

#21438 closed defect

NPE in AutoCompletionManager.getAllForKeys() — at Version 2

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

Description (last modified by GerdP)

What steps will reproduce the problem?

  1. Start clean JOSM installation
  2. Create a new node in an empty data layer
  3. Open preset preferences and remove all presets, press OK
  4. Note that the toolbar still shows the icons for some presets
  5. Select the node and click on any of the shown icons and select one preset

What is the expected result?

Not sure. Certanly no crash.
After step 3 I would have expected that all icons for presets disappear.

What happens instead?

NPE

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

The NPE doesn't happen with tested version. Presets seem to work as expected.
Stumbled over this while looking at #21360.

Build-Date:2021-10-16 10:27:49
Revision:18275
Is-Local-Build:true

Identification: JOSM/1.5 (18275 SVN de) Windows 10 64-Bit
OS Build number: Windows 10 Home 2009 (19043)
Memory Usage: 369 MB / 1753 MB (201 MB allocated, but free)
Java version: 1.8.0_221-b11, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920×1080 (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: Cp1252
System property sun.jnu.encoding: Cp1252
Locale info: de_DE
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djosm.home=<josm.pref>]
Dataset consistency test: No problems found

Last errors/warnings:
- 00032.087 E: Fehler beim Laden des Bildes '[[Image(pond.png)]]'
- 00032.098 E: Fehler beim Laden des Bildes '[[Image(oil-palm.png)]]'
- 00041.622 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-0 (18) of main
java.lang.NullPointerException
	at org.openstreetmap.josm.gui.tagging.ac.AutoCompletionManager.getAllForKeys(AutoCompletionManager.java:358)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItem.getAllForKeys(TaggingPresetItem.java:73)
	at org.openstreetmap.josm.gui.tagging.presets.items.Combo.addToPanel(Combo.java:127)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.createPanel(TaggingPreset.java:435)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.showDialog(TaggingPreset.java:596)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.showAndApply(TaggingPreset.java:508)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.actionPerformed(TaggingPreset.java:498)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.AbstractButton.doClick(Unknown Source)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$500(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)

Change History (2)

comment:1 by GerdP, 4 years ago

regression of r18221?

comment:2 by GerdP, 4 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.