﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
24981	Crash when uploading	goliath_jr	team	"==== What steps will reproduce the problem?
1. Open the attached .osm file in JOSM
2. Click the up arrow to upload 
3. Click ignore on any validation warnings
3. Bug report screen reports crash detected

==== What is the expected result?
Upload review screen should appear

==== What happens instead?
Bug report screen shows instead

==== Please provide any additional information below. Attach a screenshot if possible.

The attached .osm file has 25 xml lines with action='modify' or action='delete'. When I manually remove the following line, the error doesn't happen and I can successfully view the upload review screen. So I suspect that something about this node is triggering the crash.

  <node id='2350548380' action='modify' timestamp='2026-06-10T22:08:53Z' uid='24161136' user='YesNutNovember' visible='true' version='5' changeset='183945409' lat='47.5847047' lon='-122.333942'>
    <tag k='addr:city' v='Seattle' />
    <tag k='addr:housenumber' v='1944' />
    <tag k='addr:postcode' v='98134' />
    <tag k='addr:state' v='WA' />
    <tag k='addr:street' v='Occidental Avenue South' />
    <tag k='check_date' v='2026-06-10' />
    <tag k='check_date:opening_hours' v='2026-06-10' />
    <tag k='name' v='Visual Comfort &amp; Co.' />
    <tag k='opening_hours' v='&quot;By appointment only&quot;' />
    <tag k='shop' v='lighting' />
    <tag k='source' v='King County GIS;data.seattle.gov' />
    <tag k='website' v='https://www.visualcomfort.com/us/showrooms/seattle' />
  </node>


{{{
Revision:19613
Build-Date:2026-08-12 01:46:33

Identification: JOSM/1.5 (19613 en) Mac OS X 15.8.1
OS Build number: macOS 15.8.1 (24H32)
Memory Usage: 432 MB / 24576 MB (230 MB allocated, but free)
Java version: 25.0.4+7-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.apple.laf.AquaLookAndFeel
Screen: Display 1 1512x982x32bpp@120Hz (scaling 2.00×2.00)
Maximum Screen Size: 1512×982
Best cursor sizes: 16×16→16×16, 32×32→32×32
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: en_US
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djpackage.app-version=19613, -XX:MaxRAMPercentage=75.0, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, --add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.apple.eawt=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, --add-opens=java.base/java.lang=ALL-UNNAMED, --add-opens=java.base/java.nio=ALL-UNNAMED, --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED, --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED, --add-opens=java.desktop/javax.imageio.spi=ALL-UNNAMED, --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED, --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED, -Djpackage.app-path=/Applications/JOSM.app/Contents/MacOS/JOSM]
Dataset consistency test: No problems found

Plugins:
+ WebsiteWizard (1.0.0)
+ undelete (36503)

Last errors/warnings:
- 00000.909 W: Missing plugin main version in plugin mapwithai
- 00001.124 W: Missing plugin main version in plugin mapwithai
- 00013.345 E: Handled by bug report queue: java.lang.ArrayIndexOutOfBoundsException: Coordinate out of bounds!
- 00013.349 E: Handled by bug report queue: java.lang.ArrayIndexOutOfBoundsException: Coordinate out of bounds!
- 00013.351 E: Handled by bug report queue: java.lang.ArrayIndexOutOfBoundsException: Coordinate out of bounds!
- 00013.356 E: Handled by bug report queue: java.lang.ArrayIndexOutOfBoundsException: Coordinate out of bounds!
- 00013.357 E: Handled by bug report queue: java.lang.ArrayIndexOutOfBoundsException: Coordinate out of bounds!



=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (41) of main
java.lang.ArrayIndexOutOfBoundsException: Coordinate out of bounds!
	at java.desktop@25.0.4/java.awt.image.SinglePixelPackedSampleModel.getPixel(Unknown Source)
	at java.desktop@25.0.4/java.awt.image.Raster.getPixel(Unknown Source)
	at com.github.weisj.jsvg.nodes.filter.ImageProducerChannel.pixelAt(ImageProducerChannel.java:74)
	at com.github.weisj.jsvg.nodes.filter.FeDisplacementMap$DisplacementOp.filter(FeDisplacementMap.java:185)
	at java.desktop@25.0.4/java.awt.image.BufferedImageFilter.imageComplete(Unknown Source)
	at java.desktop@25.0.4/sun.awt.image.OffScreenImageSource.produce(Unknown Source)
	at java.desktop@25.0.4/sun.awt.image.OffScreenImageSource.addConsumer(Unknown Source)
	at java.desktop@25.0.4/sun.awt.image.OffScreenImageSource.startProduction(Unknown Source)
	at java.desktop@25.0.4/java.awt.image.FilteredImageSource.startProduction(Unknown Source)
	at java.desktop@25.0.4/sun.awt.image.ImageRepresentation.startProduction(Unknown Source)
	at java.desktop@25.0.4/sun.awt.image.ToolkitImage.addWatcher(Unknown Source)
	at java.desktop@25.0.4/sun.awt.image.ToolkitImage.getWidth(Unknown Source)
	at java.desktop@25.0.4/sun.java2d.SunGraphics2D.drawImage(Unknown Source)
	at java.desktop@25.0.4/sun.java2d.SunGraphics2D.drawImage(Unknown Source)
	at com.github.weisj.jsvg.nodes.filter.AbstractCompositeFilterPrimitive.applyFilter(AbstractCompositeFilterPrimitive.java:74)
	at com.github.weisj.jsvg.nodes.filter.FeComposite.applyFilter(FeComposite.java:35)
	at com.github.weisj.jsvg.nodes.filter.Filter.applyFilter(Filter.java:184)
	at com.github.weisj.jsvg.renderer.impl.Info$InfoWithIsolation.close(Info.java:156)
	at com.github.weisj.jsvg.renderer.impl.NodeRenderer.renderNode(NodeRenderer.java:66)
	at com.github.weisj.jsvg.renderer.impl.NodeRenderer.renderNode(NodeRenderer.java:59)
	at com.github.weisj.jsvg.nodes.container.CommonRenderableContainerNode.render(CommonRenderableContainerNode.java:81)
	at com.github.weisj.jsvg.nodes.container.BaseInnerViewContainer.renderWithEstablishedViewBox(BaseInnerViewContainer.java:75)
	at com.github.weisj.jsvg.renderer.impl.NodeRenderer.renderRootSVG(NodeRenderer.java:54)
	at com.github.weisj.jsvg.SVGDocument.renderWithPlatform(SVGDocument.java:156)
	at com.github.weisj.jsvg.SVGDocument.renderWithPlatform(SVGDocument.java:123)
	at com.github.weisj.jsvg.SVGDocument.renderWithPlatform(SVGDocument.java:117)
	at com.github.weisj.jsvg.SVGDocument.render(SVGDocument.java:107)
	at com.github.weisj.jsvg.SVGDocument.render(SVGDocument.java:100)
	at org.openstreetmap.josm.tools.ImageProvider.lambda$createImageFromSvg$0(ImageProvider.java:1480)
	at org.openstreetmap.josm.tools.ImageResizeMode.createBufferedImage(ImageResizeMode.java:95)
	at org.openstreetmap.josm.tools.ImageProvider.createImageFromSvg(ImageProvider.java:1479)
	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:1458)
	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@25.0.4/javax.swing.plaf.basic.BasicListUI.updateLayoutState(Unknown Source)
	at java.desktop@25.0.4/javax.swing.plaf.basic.BasicListUI.maybeUpdateLayoutState(Unknown Source)
	at java.desktop@25.0.4/javax.swing.plaf.basic.BasicListUI.getPreferredSize(Unknown Source)
	at java.desktop@25.0.4/javax.swing.JComponent.getPreferredSize(Unknown Source)
	at java.desktop@25.0.4/javax.swing.JList.getPreferredScrollableViewportSize(Unknown Source)
	at java.desktop@25.0.4/javax.swing.ViewportLayout.preferredLayoutSize(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.preferredSize(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.getPreferredSize(Unknown Source)
	at java.desktop@25.0.4/javax.swing.JComponent.getPreferredSize(Unknown Source)
	at java.desktop@25.0.4/javax.swing.ScrollPaneLayout.preferredLayoutSize(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.preferredSize(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.getPreferredSize(Unknown Source)
	at java.desktop@25.0.4/javax.swing.JComponent.getPreferredSize(Unknown Source)
	at java.desktop@25.0.4/java.awt.GridBagLayout.GetLayoutInfo(Unknown Source)
	at java.desktop@25.0.4/java.awt.GridBagLayout.getLayoutInfo(Unknown Source)
	at java.desktop@25.0.4/java.awt.GridBagLayout.preferredLayoutSize(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.preferredSize(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.getPreferredSize(Unknown Source)
	at java.desktop@25.0.4/javax.swing.JComponent.getPreferredSize(Unknown Source)
	at java.desktop@25.0.4/javax.swing.plaf.basic.BasicSplitPaneUI$BasicHorizontalLayoutManager.getPreferredSizeOfComponent(Unknown Source)
	at java.desktop@25.0.4/javax.swing.plaf.basic.BasicSplitPaneUI$BasicHorizontalLayoutManager.getPreferredSizes(Unknown Source)
	at java.desktop@25.0.4/javax.swing.plaf.basic.BasicSplitPaneUI$BasicHorizontalLayoutManager.resetToPreferredSizes(Unknown Source)
	at java.desktop@25.0.4/javax.swing.plaf.basic.BasicSplitPaneUI$BasicHorizontalLayoutManager.layoutContainer(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.layout(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.doLayout(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.validateTree(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.validateTree(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.validateTree(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.validateTree(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.validateTree(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.validate(Unknown Source)
	at java.desktop@25.0.4/java.awt.Container.validateUnconditionally(Unknown Source)
	at java.desktop@25.0.4/java.awt.Dialog.conditionalShow(Unknown Source)
	at java.desktop@25.0.4/java.awt.Dialog.show(Unknown Source)
	at java.desktop@25.0.4/java.awt.Component.show(Unknown Source)
	at java.desktop@25.0.4/java.awt.Component.setVisible(Unknown Source)
	at java.desktop@25.0.4/java.awt.Window.setVisible(Unknown Source)
	at java.desktop@25.0.4/java.awt.Dialog.setVisible(Unknown Source)
	at org.openstreetmap.josm.gui.io.UploadDialog.setVisible(UploadDialog.java:371)
	at org.openstreetmap.josm.actions.UploadAction.realUploadData(UploadAction.java:304)
	at org.openstreetmap.josm.actions.UploadAction.lambda$uploadData$1(UploadAction.java:273)
	at java.desktop@25.0.4/java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.desktop@25.0.4/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop@25.0.4/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop@25.0.4/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop@25.0.4/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop@25.0.4/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.desktop@25.0.4/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop@25.0.4/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop@25.0.4/java.awt.EventDispatchThread.run(Unknown Source)
}}}
"	defect	closed	normal		Core		duplicate	template_report	
