﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
24780	Error message while closing JOSM	anonymous	darkonus	"==== What steps will reproduce the problem?
1. This message appears when I close JOSM after a session: ""An unexpected exception occurred.""
2. 
3. 

==== What is the expected result?
Close without a warning message

==== What happens instead?
I click ""Ignore this error."" and then close JOSM

==== Please provide any additional information below. Attach a screenshot if possible.

{{{
Revision:19555
Build-Date:2026-03-30 09:42:59

Identification: JOSM/1.5 (19555 en_GB) Windows 11 64-Bit
OS Build number: Windows 10 Enterprise 25H2 (26200)
Memory Usage: 440 MB / 12160 MB (167 MB allocated, but free)
Java version: 21.0.10+7-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: \Display0 1920x1080x32bpp@60Hz (scaling 1.00×1.00) \Display1 1920x1080x32bpp@60Hz (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: UTF-8
System property sun.jnu.encoding: Cp1252
Locale info: en_GB
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djpackage.app-version=1.5.19555, -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.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=%UserProfile%\AppData\Local\JOSM\JOSM.exe]

Plugins:
+ FastDraw (36474)
+ FilletTools (0.3.1)
+ ImportImagePlugin (36474)
+ apache-commons (36474)
+ buildings_tools (36474)
+ ejml (36474)
+ geochat (36474)
+ geotools (36474)
+ jackson (36474)
+ jaxb (36474)
+ jts (36474)
+ mapathoner (v1.7.4)
+ markseen (182)
+ measurement (36474)
+ opendata (36474)
+ reltoolbox (36474)
+ scripting-0.2.10 (v0.2.10)
+ terracer (36484)
+ todo (159)
+ utilsplugin2 (36497)

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/ColorWays&zip=1
- https://github.com/MissingMaps/josm_styles/archive/master.zip
- https://github.com/osmlab/appledata/archive/josm_paint_inline_validation.zip
+ https://raw.githubusercontent.com/open-energy-transition/color-my-grid/refs/heads/main/ohmygrid-default.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/Waterways&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/NewModifiedBuildings&zip=1
+ https://gitlab.com/peculiar-theater/mapcss/-/raw/main/tm-taskgrid/tm-taskgrid.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/LastUpdated&zip=1

Validator rules:
+ https://josm.openstreetmap.de/josmfile?page=Rules/ValidatingBuildingsInHOTTMProjects&zip=1

Last errors/warnings:
- 02610.777 W: java.io.IOException: Attribution is not loaded yet
- 02610.777 W: java.io.IOException: Attribution is not loaded yet
- 02610.778 W: java.io.IOException: Attribution is not loaded yet
- 02610.778 W: java.io.IOException: Attribution is not loaded yet
- 02610.778 W: java.io.IOException: Attribution is not loaded yet
- 02610.779 W: java.io.IOException: Attribution is not loaded yet
- 02610.779 W: java.io.IOException: Attribution is not loaded yet
- 02610.779 W: java.io.IOException: Attribution is not loaded yet
- 02610.780 W: java.io.IOException: Attribution is not loaded yet
- 03601.010 E: Handled by bug report queue: java.lang.IllegalArgumentException: Listener was not registered before: LayerChangeAdapter [org.openstreetmap.josm.plugins.fillettools.FilletToolsMapMode@65487ece]



=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (51) of main
java.lang.IllegalArgumentException: Listener was not registered before: LayerChangeAdapter [org.openstreetmap.josm.plugins.fillettools.FilletToolsMapMode@65487ece]
	at org.openstreetmap.josm.gui.layer.LayerManager.removeLayerChangeListener(LayerManager.java:437)
	at org.openstreetmap.josm.actions.JosmAction.destroy(JosmAction.java:277)
	at org.openstreetmap.josm.gui.IconToggleButton.destroy(IconToggleButton.java:73)
	at org.openstreetmap.josm.gui.MapFrame.destroy(MapFrame.java:357)
	at org.openstreetmap.josm.gui.MainPanel.updateContent(MainPanel.java:59)
	at org.openstreetmap.josm.gui.MainPanel$1.afterLastLayerRemoved(MainPanel.java:162)
	at org.openstreetmap.josm.gui.layer.MainLayerManager.realRemoveSingleLayer(MainLayerManager.java:354)
	at org.openstreetmap.josm.gui.layer.LayerManager.realRemoveLayer(LayerManager.java:269)
	at org.openstreetmap.josm.gui.layer.LayerManager.lambda$removeLayer$1(LayerManager.java:251)
	at org.openstreetmap.josm.gui.util.GuiHelper.runInEDTAndWaitWithException(GuiHelper.java:247)
	at org.openstreetmap.josm.gui.layer.LayerManager.removeLayer(LayerManager.java:251)
	at org.openstreetmap.josm.gui.layer.LayerManager.realResetState(LayerManager.java:518)
	at org.openstreetmap.josm.gui.layer.MainLayerManager.realResetState(MainLayerManager.java:558)
	at org.openstreetmap.josm.gui.util.GuiHelper.runInEDTAndWaitWithException(GuiHelper.java:247)
	at org.openstreetmap.josm.gui.layer.LayerManager.resetState(LayerManager.java:509)
	at org.openstreetmap.josm.gui.MainTermination.run(MainTermination.java:43)
	at org.openstreetmap.josm.spi.lifecycle.Lifecycle.exitJosm(Lifecycle.java:126)
	at org.openstreetmap.josm.gui.MainApplication.exitJosm(MainApplication.java:545)
	at org.openstreetmap.josm.gui.MainFrame$ExitWindowAdapter.windowClosing(MainFrame.java:201)
	at java.desktop/java.awt.Window.processWindowEvent(Unknown Source)
	at java.desktop/javax.swing.JFrame.processWindowEvent(Unknown Source)
	at java.desktop/java.awt.Window.processEvent(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(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.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.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)
}}}
"	defect	closed	normal		Plugin FilletTools		duplicate	template_report	
