Modify

Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#20094 closed defect (fixed)

NPE at PreferenceTabbedPane.computeMaxTabWidth

Reported by: sanchi Owned by: Don-vip
Priority: blocker Milestone: 20.11
Component: Core Version: latest
Keywords: regression Cc: Don-vip

Description

What steps will reproduce the problem?

  1. click on preferences

What is the expected result?

opens preferences

What happens instead?

nothing happens

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: 2020-11-16 16:45:58 +0100 (Mon, 16 Nov 2020)
Build-Date:2020-11-16 15:53:00
Revision:17314
Relative:URL: ^/trunk

Identification: JOSM/1.5 (17314 es) Mac OS X 10.16
OS Build number: macOS 11.0.1 (20B29)
Memory Usage: 1644 MB / 3641 MB (390 MB allocated, but free)
Java version: 1.8.0_271-b09, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Look and Feel: com.apple.laf.AquaLookAndFeel
Screen: Display 69733440 1680x1050 (scaling 1.0x1.0)
Maximum Screen Size: 1680x1050
Best cursor sizes: 16x16 -> 16x16, 32x32 -> 32x32
VM arguments: [-Djava.library.path=/Applications/JOSM.app/Contents/MacOS, -DLibraryDirectory=${HOME}/Library, -DDocumentsDirectory=${HOME}/Documents, -DApplicationSupportDirectory=${HOME}/Library/Application Support, -DCachesDirectory=${HOME}/Library/Caches, -DSandboxEnabled=false, -XX:MaxPermSize=4096M, -Dapple.laf.useScreenMenuBar=true, -Dcom.apple.macos.use-file-dialog-packages=true, -Dcom.apple.macos.useScreenMenuBar=true, -Dcom.apple.mrj.application.apple.menu.about.name=JOSM, -Dcom.apple.smallTabs=true]
Dataset consistency test: No problems found

Plugins:
+ AddrInterpolation (35640)
+ ColorPlugin (1537115529)
+ FastDraw (35640)
+ FixAddresses (35640)
+ Mapillary (1.5.27)
+ MicrosoftStreetside (35248)
+ OpenStreetCam (350)
+ OpeningHoursEditor (35640)
+ PicLayer (2a9aa7a)
+ RelationDissolve (0.2.0)
+ apache-commons (35524)
+ apache-http (35589)
+ buildings_tools (35640)
+ changeset-viewer (22)
+ conflation (0.6.6)
+ contourmerge (v0.1.6)
+ ejml (35458)
+ geotools (35458)
+ gridify (1588746833)
+ gson (35458)
+ http2
+ javafx-osx (35458)
+ jaxb (35543)
+ jna (35458)
+ jogl (1.2.3)
+ jts (35458)
+ kendzi3d (1.0.205)
+ kendzi3d-resources (0.0.2)
+ log4j (35458)
+ measurement (35640)
+ microdata_scraping (1570137897)
+ opendata (35640)
+ pdfimport (35640)
+ pointInfo (35640)
+ pt_assistant (2.1.10-80-g7d9bba3)
+ reltoolbox (35640)
+ reverter (35640)
+ tageditor (35640)
+ todo (30306)
+ touchscreenhelper (35640)
+ turnlanes-tagging (288)
+ turnrestrictions (35640)
+ undelete (35640)
+ utilsplugin2 (35640)
+ waydownloader (35640)
+ wikipedia (1.1.4)

Tagging presets:
+ https://josm.openstreetmap.de/josmfile?page=Presets/NewParkingFeatures&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/ParkingLanes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/BuildingPreset&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Simple_Indoor_Tagging&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Light_sources&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Bus_lanes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/OpenStationMap&zip=1
+ https://raw.githubusercontent.com/species/josm-preset-wheelchair/master/sidewalks_kerbs.xml
+ https://josm.openstreetmap.de/josmfile?page=Presets/BICSpain&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Healthcare&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Golf_Course&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/LaneAttributes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Heritage&zip=1
+ https://github.com/kendzi/Simple3dBuildingsPreset/releases/download/0.9_2018-05-08/s3db-preset.zip
+ https://raw.githubusercontent.com/yopaseopor/traffic_signs_preset_JOSM/master/ES.zip

Map paint styles:
+ https://josm.openstreetmap.de/josmfile?page=Styles/Coloured_Streets&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Maxspeed&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/ParkingLanes&zip=1
- https://github.com/GlassOceanos/indoor-JOSM-style/archive/master.zip
- https://josm.openstreetmap.de/josmfile?page=Styles/light_source&zip=1
- https://raw.githubusercontent.com/species/josm-preset-wheelchair/master/sidewalks_kerbs.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/PublicTransportV2&zip=1
- https://josm.openstreetmap.de/josmfile?page=Es:Styles/Coloured_buildings&style
- https://josm.openstreetmap.de/josmfile?page=Styles/PublicTransport&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Building_Levels_Labels&zip=1
- <josm.userdata>/styles/sit.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/Sidewalks&zip=1
- https://raw.githubusercontent.com/yopaseopor/indoormap/master/indoormap-style.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/NewParkingFeatures&zip=1
- https://raw.githubusercontent.com/OpenSidewalks/OpenSidewalks-Schema/master/open_sidewalks.mapcss
+ https://josm.openstreetmap.de/josmfile?page=Styles/RecyclingMaterials&zip=1
- https://github.com/osmlab/appledata/archive/josm_paint_inline_validation.zip
- https://raw.githubusercontent.com/mapbox/mapping/master/JOSM/styles/road-areas.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/iD&zip=1
- https://raw.githubusercontent.com/species/josm-preset-wheelchair/master/sidewalks_kerbs.mapcss
+ https://josm.openstreetmap.de/josmfile?page=Styles/Bench&zip=1

Validator rules:
+ https://josm.openstreetmap.de/josmfile?page=Rules/SuspiciousSwimming_Pool&zip=1
- https://github.com/Jungle-Bus/transport_mapcss/raw/gh-pages/transport.validator.zip
- https://josm.openstreetmap.de/josmfile?page=Rules/OsmoseValidations&zip=1

Last errors/warnings:
- 00006,163 W: El complemento http2 requiere la versión 11 de Java. La versión actual de Java es 8. Tienes que actualizar Java para poder usar este complemento.
- 00010,912 E: org.openstreetmap.josm.gui.mappaint.mapcss.parsergen.ParseException: Warning: end of line while reading an unquoted string at line 20 column 20.
- 00041,036 E: No se pudo localizar la imagen 'preference.png'

On JOSM 17309 it works. If I update JOSM to 17314 it no longer works.

Attachments (1)

20094.patch (713 bytes ) - added by GerdP 4 years ago.
add null check

Download all attachments as: .zip

Change History (15)

comment:1 by GerdP, 4 years ago

Summary: Nan't access preferences in macosCan't access preferences in macos

comment:2 by Stereo, 4 years ago

Owner: changed from team to sanchi
Status: newneedinfo

Can you please try the beta builds at https://github.com/openstreetmap/josm/releases ? It works for me with them.

Last edited 4 years ago by Stereo (previous) (diff)

comment:3 by Stereo, 4 years ago

The new builds will also mean that you won't get the warning about http2 and needing a java update ;)

comment:4 by sanchi, 4 years ago

now it gives me error with "JOSM-macOS-java15.zip" in 17315. If I download "JOSM-macOS-java15.zip" in 17309 it works

Revision:17315
Is-Local-Build:true
Build-Date:2020-11-16 18:27:28

Identification: JOSM/1.5 (17315 SVN es) Mac OS X 10.16
OS Build number: macOS 11.0.1 (20B29)
Memory Usage: 504 MB / 8192 MB (218 MB allocated, but free)
Java version: 15.0.1+9, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.apple.laf.AquaLookAndFeel
Screen: Display 2077750207 1680x1050 (scaling 1.0x1.0)
Maximum Screen Size: 1680x1050
Best cursor sizes: 16x16 -> 16x16, 32x32 -> 32x32
VM arguments: [--module-path=/private/var/folders/tj/vp_7lyrx62xcqgwg3d1jgx0m0000gn/T/AppTranslocation/67C9F883-20BC-4011-AF04-9D07661027EF/d/JOSM.app/Contents/app/mods]

Plugins:
+ AddrInterpolation (35640)
+ ColorPlugin (1537115529)
+ FastDraw (35640)
+ FixAddresses (35640)
+ Mapillary (1.5.27)
+ MicrosoftStreetside (35248)
+ OpenStreetCam (350)
+ OpeningHoursEditor (35640)
+ PicLayer (2a9aa7a)
+ RelationDissolve (0.2.0)
+ apache-commons (35524)
+ apache-http (35589)
+ buildings_tools (35640)
+ changeset-viewer (22)
+ conflation (0.6.6)
+ contourmerge (v0.1.6)
+ ejml (35458)
+ geotools (35458)
+ gridify (1588746833)
+ gson (35458)
+ http2 (35427)
+ javafx-osx (35458)
+ jaxb (35543)
+ jna (35458)
+ jogl (1.2.3)
+ jts (35458)
+ kendzi3d-resources (0.0.2)
+ log4j (35458)
+ measurement (35640)
+ microdata_scraping (1570137897)
+ opendata (35640)
+ pdfimport (35640)
+ pointInfo (35640)
+ pt_assistant (2.1.10-80-g7d9bba3)
+ reltoolbox (35640)
+ reverter (35640)
+ tageditor (35640)
+ todo (30306)
+ touchscreenhelper (35640)
+ turnlanes-tagging (288)
+ turnrestrictions (35640)
+ undelete (35640)
+ utilsplugin2 (35640)
+ waydownloader (35640)
+ wikipedia (1.1.4)

Tagging presets:
+ https://josm.openstreetmap.de/josmfile?page=Presets/NewParkingFeatures&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/ParkingLanes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/BuildingPreset&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Simple_Indoor_Tagging&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Light_sources&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Bus_lanes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/OpenStationMap&zip=1
+ https://raw.githubusercontent.com/species/josm-preset-wheelchair/master/sidewalks_kerbs.xml
+ https://josm.openstreetmap.de/josmfile?page=Presets/BICSpain&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Healthcare&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Golf_Course&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/LaneAttributes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Heritage&zip=1
+ https://github.com/kendzi/Simple3dBuildingsPreset/releases/download/0.9_2018-05-08/s3db-preset.zip
+ https://raw.githubusercontent.com/yopaseopor/traffic_signs_preset_JOSM/master/ES.zip

Map paint styles:
+ https://josm.openstreetmap.de/josmfile?page=Styles/Coloured_Streets&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Maxspeed&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/ParkingLanes&zip=1
- https://github.com/GlassOceanos/indoor-JOSM-style/archive/master.zip
- https://josm.openstreetmap.de/josmfile?page=Styles/light_source&zip=1
- https://raw.githubusercontent.com/species/josm-preset-wheelchair/master/sidewalks_kerbs.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/PublicTransportV2&zip=1
- https://josm.openstreetmap.de/josmfile?page=Es:Styles/Coloured_buildings&style
- https://josm.openstreetmap.de/josmfile?page=Styles/PublicTransport&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Building_Levels_Labels&zip=1
- <josm.userdata>/styles/sit.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/Sidewalks&zip=1
- https://raw.githubusercontent.com/yopaseopor/indoormap/master/indoormap-style.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/NewParkingFeatures&zip=1
- https://raw.githubusercontent.com/OpenSidewalks/OpenSidewalks-Schema/master/open_sidewalks.mapcss
+ https://josm.openstreetmap.de/josmfile?page=Styles/RecyclingMaterials&zip=1
- https://github.com/osmlab/appledata/archive/josm_paint_inline_validation.zip
- https://raw.githubusercontent.com/mapbox/mapping/master/JOSM/styles/road-areas.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/iD&zip=1
- https://raw.githubusercontent.com/species/josm-preset-wheelchair/master/sidewalks_kerbs.mapcss
+ https://josm.openstreetmap.de/josmfile?page=Styles/Bench&zip=1

Validator rules:
+ https://josm.openstreetmap.de/josmfile?page=Rules/SuspiciousSwimming_Pool&zip=1
- https://github.com/Jungle-Bus/transport_mapcss/raw/gh-pages/transport.validator.zip
- https://josm.openstreetmap.de/josmfile?page=Rules/OsmoseValidations&zip=1

Last errors/warnings:
- 00004.010 E: java.lang.UnsatisfiedLinkError: <josm.userdata>/plugins/javafx/libjfxmedia_avf.dylib: dlopen(<josm.userdata>/plugins/javafx/libjfxmedia_avf.dylib, 1): Library not loaded: @rpath/libgstreamer-lite.dylib
- 00004.019 E: java.lang.UnsatisfiedLinkError: <josm.userdata>/plugins/javafx/libfxplugins.dylib: dlopen(<josm.userdata>/plugins/javafx/libfxplugins.dylib, 1): Library not loaded: @rpath/libgstreamer-lite.dylib
- 00007.530 E: org.openstreetmap.josm.gui.mappaint.mapcss.parsergen.ParseException: Warning: end of line while reading an unquoted string at line 20 column 20.
- 00017.864 E: Handled by bug report queue: java.lang.NullPointerException: Cannot invoke "String.length()" because "<parameter1>" is null


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

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (21) of main
java.lang.NullPointerException: Cannot invoke "String.length()" because "<parameter1>" is null
	at java.desktop/sun.font.FontDesignMetrics.stringWidth(Unknown Source)
	at org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane.lambda$computeMaxTabWidth$7(PreferenceTabbedPane.java:578)
	at java.base/java.util.stream.ReferencePipeline$4$1.accept(Unknown Source)
	at java.base/java.util.stream.ReferencePipeline$2$1.accept(Unknown Source)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(Unknown Source)
	at java.base/java.util.stream.AbstractPipeline.copyInto(Unknown Source)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
	at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(Unknown Source)
	at java.base/java.util.stream.AbstractPipeline.evaluate(Unknown Source)
	at java.base/java.util.stream.IntPipeline.reduce(Unknown Source)
	at java.base/java.util.stream.IntPipeline.max(Unknown Source)
	at org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane.computeMaxTabWidth(PreferenceTabbedPane.java:578)
	at org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane.addGUITabs(PreferenceTabbedPane.java:542)
	at org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane.buildGui(PreferenceTabbedPane.java:502)
	at org.openstreetmap.josm.gui.preferences.PreferenceDialog.build(PreferenceDialog.java:86)
	at org.openstreetmap.josm.gui.preferences.PreferenceDialog.<init>(PreferenceDialog.java:56)
	at org.openstreetmap.josm.actions.PreferencesAction.run(PreferencesAction.java:109)
	at org.openstreetmap.josm.actions.PreferencesAction.actionPerformed(PreferencesAction.java:104)
	at org.openstreetmap.josm.gui.MainApplication$DefaultNativeOsCallback.handlePreferences(MainApplication.java:1430)
	at org.openstreetmap.josm.tools.PlatformHookOsx.invoke(PlatformHookOsx.java:195)
	at com.sun.proxy.$Proxy2.handlePreferences(Unknown Source)
	at java.desktop/com.apple.eawt._AppEventHandler$_PreferencesDispatcher.performUsing(Unknown Source)
	at java.desktop/com.apple.eawt._AppEventHandler$_PreferencesDispatcher.performUsing(Unknown Source)
	at java.desktop/com.apple.eawt._AppEventHandler$_AppEventDispatcher$1.run(Unknown Source)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)

comment:5 by sanchi, 4 years ago

In 17312 it opens preferences without problems. In 17313 an error occurs when trying to open preferences

comment:6 by Stereo, 4 years ago

Milestone: 20.10
Priority: normalblocker
Resolution: fixed
Status: needinfoclosed

comment:7 by Stereo, 4 years ago

Resolution: fixed
Status: closedreopened

comment:8 by Stereo, 4 years ago

Cc: Don-vip added

comment:9 by Stereo, 4 years ago

Owner: changed from sanchi to Don-vip
Status: reopenednew

comment:10 by GerdP, 4 years ago

Maybe a plugin that is not maintained by the JOSM team?

by GerdP, 4 years ago

Attachment: 20094.patch added

add null check

comment:11 by Don-vip, 4 years ago

Keywords: regression added
Status: newassigned
Summary: Can't access preferences in macosNPE at PreferenceTabbedPane.computeMaxTabWidth

comment:12 by Don-vip, 4 years ago

Helpful NullPointerExceptions is the best feature of Java 14 by far :)

Last edited 4 years ago by Don-vip (previous) (diff)

comment:13 by Don-vip, 4 years ago

Resolution: fixed
Status: assignedclosed

In 17316/josm:

see #7548 - fix #20094 - fix NPE

comment:14 by Don-vip, 4 years ago

Milestone: 20.1020.11

Milestone renamed

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Don-vip.
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.