NPE at GeoPropertyIndex$GPLevel.isInside - while adding a tag
WORKAROUND FOR JOSM 15937:
Use Help/Action/TaggingPresetSearch to add junction=roundabout
or highway=mini_roundabout
If you can't open the Add tag window anymore without getting the bug message use the following workaround:
- Enable Help/ExpertMode.
- Go to the advanced preferences Help/Preferences/Advanced, search for
properties.remember-recently-added-tags
and set it to false
.
- Restart JOSM. Set it back to
true
.
First present in r15889.
Steps to reproduce:
1) Open a new layer
2) Add a node
3) Select the node
4) Open the add tag dialog
5) Enter junction
into the key
field
6) Start typing roundabout
into the value
field (it will crash on r
)
Unless someone is already working on it, I'll try to get a patch attached as soon as possible.
EDIT: Relevant mapcss rule (from default MapCSS file):
node:righthandtraffic[junction=roundabout] {
icon-image: String<presets/vehicle/restriction/roundabout_right.svg>;
icon_z17: String<presets/vehicle/restriction/roundabout_right.svg>;
}
Caused by: org.openstreetmap.josm.tools.JosmRuntimeException: java.lang.reflect.InvocationTargetException
at org.openstreetmap.josm.gui.mappaint.mapcss.ConditionFactory$PseudoClassCondition.applies(ConditionFactory.java:847)
at org.openstreetmap.josm.gui.mappaint.mapcss.Selector$AbstractSelector.matches(Selector.java:570)
at org.openstreetmap.josm.gui.mappaint.mapcss.MapCSSStyleSource.apply(MapCSSStyleSource.java:704)
at org.openstreetmap.josm.gui.mappaint.ElemStyles.generateStyles(ElemStyles.java:384)
at org.openstreetmap.josm.tools.ImageProvider.getTaggedPadded(ImageProvider.java:1586)
at org.openstreetmap.josm.tools.ImageProvider.getPadded(ImageProvider.java:1546)
at org.openstreetmap.josm.gui.dialogs.properties.TagEditHelper$AbstractTagsDialog.findIcon(TagEditHelper.java:701)
... 2 more
Caused by: java.lang.reflect.InvocationTargetException
at org.openstreetmap.josm.gui.mappaint.mapcss.ConditionFactory$PseudoClassCondition.applies(ConditionFactory.java:845)
... 8 more
Caused by: java.lang.NullPointerException
at org.openstreetmap.josm.tools.GeoPropertyIndex$GPLevel.isInside(GeoPropertyIndex.java:159)
at org.openstreetmap.josm.tools.GeoPropertyIndex$GPLevel.get(GeoPropertyIndex.java:93)
at org.openstreetmap.josm.tools.GeoPropertyIndex.get(GeoPropertyIndex.java:49)
at org.openstreetmap.josm.tools.RightAndLefthandTraffic.isRightHandTraffic(RightAndLefthandTraffic.java:39)
at org.openstreetmap.josm.gui.mappaint.mapcss.Functions.is_right_hand_traffic(Functions.java:1069)
at org.openstreetmap.josm.gui.mappaint.mapcss.ConditionFactory$PseudoClasses.righthandtraffic(ConditionFactory.java:724)
... 9 more
Change History (44)
Description: |
modified (diff)
|
Summary: |
Crash when adding `junction=roundabout` to a node →
[PATCH] Crash when adding `junction=roundabout` to a node
|
Description: |
modified (diff)
|
Resolution: |
→ fixed
|
Status: |
new →
closed
|
Description: |
modified (diff)
|
Description: |
modified (diff)
|
Description: |
modified (diff)
|
Priority: |
normal →
blocker
|
Summary: |
[PATCH] Crash when adding `junction=roundabout` to a node →
NPE at GeoPropertyIndex$GPLevel.isInside - while adding a tag
|
Description: |
modified (diff)
|
Initial patch (fixes the issue, no non-regression tests)