Modify

Opened 5 days ago

Closed 2 days ago

#24631 closed defect (needinfo)

NPE in svg rendering

Reported by: anonymous Owned by: anonymous
Priority: normal Milestone:
Component: Core Version:
Keywords: template_report Cc:

Description

What steps will reproduce the problem?

  1. loading seamarks with attached styles

use https://raw.githubusercontent.com/quantenschaum/mapping/refs/heads/icons/extra.mapcss
maybe this is the trigger

What is the expected result?

no NPE

What happens instead?

NPE

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

Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2026-01-31 13:00:34 +0100 (Sat, 31 Jan 2026)
Revision:19481
Build-Date:2026-02-01 02:30:45
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19481 en) Linux Ubuntu 25.10
Memory Usage: 1112 MB / 15944 MB (350 MB allocated, but free)
Java version: 21.0.10+7-Ubuntu-125.10, Ubuntu, OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: :0.0 3840x2160x[Multi depth]@30Hz (scaling 1.00×1.00)
Maximum Screen Size: 3840×2160
Best cursor sizes: 16×16→16×16, 32×32→32×32
Environment variable LANG: de_DE.UTF-8
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: en_DE
Numbers with default locale: 1234567890 -> 1234567890
Desktop environment: ubuntu:GNOME
Java package: openjdk-21-jre:amd64-21.0.10+7-1~25.10
Java ATK Wrapper package: libatk-wrapper-java:all-0.42.1-2
libcommons-compress-java: libcommons-compress-java:-
libcommons-logging-java: libcommons-logging-java:all-1.3.0-1ubuntu1
fonts-noto: fonts-noto:-
VM arguments: [--add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED]
Dataset consistency test: No problems found

Plugins:
+ FastDraw (36474)
+ ImportImagePlugin (36474)
+ PicLayer (271)
+ SeaChart (36474)
+ SeaMapEditor (36474)
+ apache-commons (36474)
+ conflation (274)
+ ejml (36474)
+ geotools (36474)
+ jackson (36474)
+ jaxb (36474)
+ jts (36474)
+ opendata (36474)
+ reverter (36474)
+ undelete (36474)
+ utilsplugin2 (36474)

Tagging presets:
+ https://josm.openstreetmap.de/josmfile?page=Presets/MobilePhoneBaseStations&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/OpenSeaMap-PresetForSeamarks&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Diving&zip=1
+ https://raw.githubusercontent.com/OpenNauticalChart/josm/master/Presets_Hafen.xml
+ https://raw.githubusercontent.com/OpenSeaMap/josm/master/Presets_Sport.xml
+ https://github.com/OpenSeaMap/josm/raw/master/INT-1-preset.xml

Map paint styles:
+ https://github.com/OpenNauticalChart/josm/raw/master/INT1_MapCSS.mapcss
- https://github.com/OpenNauticalChart/josm/raw/master/CEVNI_MapCSS.mapcss
+ https://github.com/OpenNauticalChart/josm/raw/master/Seamark.validator.mapcss
- https://raw.githubusercontent.com/OpenSeaMap/josm/master/Seamark.validator.mapcss
- ${HOME}/Projekte/openseamap-josm/INT1_Seamark.mapcss
- https://raw.githubusercontent.com/OpenSeaMap/josm/master/CEVNI_MapCSS.mapcss
- https://raw.githubusercontent.com/OpenSeaMap/josm/master/Styles_Whitewater-style.mapcss
- https://github.com/OpenNauticalChart/josm/raw/master/INT1_MapCSS.mapcss
+ ${HOME}/mapping/icons/extra.mapcss
- https://raw.githubusercontent.com/quantenschaum/mapping/refs/heads/icons/extra.mapcss

Last errors/warnings:
- 00246.502 E: Failed to locate image 'gen/perch-.svg'
- 00246.563 E: Failed to locate image 'gen/fish//yellow.svg'
- 00246.564 E: Failed to locate image 'gen/fish//yellow.svg'
- 00246.578 E: Failed to locate image 'gen/fish//generic.svg'
- 00246.578 E: Failed to locate image 'gen/fish//generic.svg'
- 00246.579 E: Failed to locate image 'gen/fish//generic.svg'
- 00246.580 E: Failed to locate image 'gen/fish//yellow.svg'
- 00246.693 E: Failed to locate image 'gen/2_cones_up/horizontal/black.svg'
- 00260.780 E: Handled by bug report queue: java.lang.NullPointerException: Cannot invoke "com.kitfox.svg.ClipPath.getClipPathShape()" because "ele" is null
- 00260.786 E: Handled by bug report queue: java.lang.NullPointerException: Cannot invoke "com.kitfox.svg.ClipPath.getClipPathShape()" because "ele" is null



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

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (53) of main
java.lang.NullPointerException: Cannot invoke "com.kitfox.svg.ClipPath.getClipPathShape()" because "ele" is null
	at com.kitfox.svg.RenderableElement.beginLayer(RenderableElement.java:209)
	at com.kitfox.svg.Path.doRender(Path.java:93)
	at com.kitfox.svg.BufferPainter.paintElement(BufferPainter.java:57)
	at com.kitfox.svg.RenderableElement.render(RenderableElement.java:116)
	at com.kitfox.svg.Group.doRender(Group.java:205)
	at com.kitfox.svg.BufferPainter.paintElement(BufferPainter.java:57)
	at com.kitfox.svg.RenderableElement.render(RenderableElement.java:116)
	at com.kitfox.svg.Group.doRender(Group.java:205)
	at com.kitfox.svg.SVGRoot.doRender(SVGRoot.java:306)
	at com.kitfox.svg.BufferPainter.paintElement(BufferPainter.java:57)
	at com.kitfox.svg.RenderableElement.render(RenderableElement.java:116)
	at com.kitfox.svg.SVGRoot.renderToViewport(SVGRoot.java:250)
	at com.kitfox.svg.SVGDiagram.render(SVGDiagram.java:114)
	at com.kitfox.svg.SVGDiagram.render(SVGDiagram.java:125)
	at org.openstreetmap.josm.tools.ImageProvider.lambda$createImageFromSvg$3(ImageProvider.java:1474)
	at org.openstreetmap.josm.tools.ImageResizeMode.createBufferedImage(ImageResizeMode.java:95)
	at org.openstreetmap.josm.tools.ImageProvider.createImageFromSvg(ImageProvider.java:1471)
	at org.openstreetmap.josm.tools.ImageResource.getImageIconAlreadyScaled(ImageResource.java:194)
	at org.openstreetmap.josm.tools.ImageResource.getImageIcon(ImageResource.java:165)
	at org.openstreetmap.josm.tools.ImageResource.getPaddedIcon(ImageResource.java:261)
	at org.openstreetmap.josm.tools.ImageProvider.getPadded(ImageProvider.java:1451)
	at org.openstreetmap.josm.gui.PrimitiveRenderer.renderer(PrimitiveRenderer.java:82)
	at org.openstreetmap.josm.gui.PrimitiveRenderer.getListCellRendererComponent(PrimitiveRenderer.java:52)
	at org.openstreetmap.josm.gui.PrimitiveRenderer.getListCellRendererComponent(PrimitiveRenderer.java:31)
	at java.desktop/javax.swing.plaf.basic.BasicListUI.updateLayoutState(BasicListUI.java:1444)
	at java.desktop/javax.swing.plaf.basic.BasicListUI.maybeUpdateLayoutState(BasicListUI.java:1394)
	at java.desktop/javax.swing.plaf.basic.BasicListUI.getPreferredSize(BasicListUI.java:653)
	at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1734)
	at java.desktop/javax.swing.ScrollPaneLayout.layoutContainer(ScrollPaneLayout.java:799)
	at java.desktop/java.awt.Container.layout(Container.java:1541)
	at java.desktop/java.awt.Container.doLayout(Container.java:1530)
	at java.desktop/java.awt.Container.validateTree(Container.java:1725)
	at java.desktop/java.awt.Container.validateTree(Container.java:1734)
	at java.desktop/java.awt.Container.validateTree(Container.java:1734)
	at java.desktop/java.awt.Container.validateTree(Container.java:1734)
	at java.desktop/java.awt.Container.validateTree(Container.java:1734)
	at java.desktop/java.awt.Container.validateTree(Container.java:1734)
	at java.desktop/java.awt.Container.validate(Container.java:1660)
	at java.desktop/javax.swing.RepaintManager$3.run(RepaintManager.java:757)
	at java.desktop/javax.swing.RepaintManager$3.run(RepaintManager.java:755)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.desktop/javax.swing.RepaintManager.validateInvalidComponents(RepaintManager.java:754)
	at java.desktop/javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1896)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

Attachments (0)

Change History (2)

comment:1 by stoecker, 5 days ago

Owner: changed from team to anonymous
Status: newneedinfo

Please attach the image which fails.

comment:2 by stoecker, 2 days ago

Resolution: needinfo
Status: needinfoclosed

Modify Ticket

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