﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
8894	IndexOutOfBoundsException opening plugin window with invalid selection	skyper	team	"> What steps will reproduce the problem?
1. remove defaultpresets and only use [wiki:Presets/LaneAttributes my new preset] or any other preset which does not cover all objects type. My preset only works with ways. 
1. select an invalid object (node/relation)
1. try to open the plugin window

> What is the expected result?

The window opens.

> What happens instead?

IndexOutOfBoundsException

> Please provide any additional information below. Attach a screenshot if possible.

It works without data layer and with a least one valid object selected.

{{{
Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2013-07-20 01:35:44
Last Changed Author: stoecker
Revision: 6077
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2013-07-19 21:55:32 +0200 (Fri, 19 Jul 2013)
Last Changed Rev: 6077

Identification: JOSM/1.5 (6077 en) Linux Debian GNU/Linux 7.1 (wheezy)
Memory Usage: 114 MB / 672 MB (35 MB allocated, but free)
Java version: 1.6.0_27, Sun Microsystems Inc., OpenJDK 64-Bit Server VM
VM arguments: [-Djosm.home=$HOME/.josm-test]
Program arguments: [--language=en]
Dataset consistency test: No problems found

Plugin: tagging-preset-tester (29762)

java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
	at java.util.ArrayList.rangeCheck(ArrayList.java:571)
	at java.util.ArrayList.get(ArrayList.java:349)
	at org.openstreetmap.josm.gui.tagging.TaggingPresetSelector.getSelectedPreset(TaggingPresetSelector.java:436)
	at org.openstreetmap.josm.plugins.taggingpresettester.TaggingPresetTester.reselect(TaggingPresetTester.java:49)
	at org.openstreetmap.josm.plugins.taggingpresettester.TaggingPresetTester.<init>(TaggingPresetTester.java:83)
	at org.openstreetmap.josm.plugins.taggingpresettester.TaggingPresetTesterAction.actionPerformed(TaggingPresetTesterAction.java:49)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2012)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2335)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:404)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.AbstractButton.doClick(AbstractButton.java:374)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:829)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:873)
	at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
	at java.awt.Component.processMouseEvent(Component.java:6288)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
	at java.awt.Component.processEvent(Component.java:6053)
	at java.awt.Container.processEvent(Container.java:2045)
	at java.awt.Component.dispatchEventImpl(Component.java:4649)
	at java.awt.Container.dispatchEventImpl(Container.java:2103)
	at java.awt.Component.dispatchEvent(Component.java:4475)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4633)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4297)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4227)
	at java.awt.Container.dispatchEventImpl(Container.java:2089)
	at java.awt.Window.dispatchEventImpl(Window.java:2587)
	at java.awt.Component.dispatchEvent(Component.java:4475)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:675)
	at java.awt.EventQueue.access$300(EventQueue.java:96)
	at java.awt.EventQueue$2.run(EventQueue.java:634)
	at java.awt.EventQueue$2.run(EventQueue.java:632)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:116)
	at java.awt.EventQueue$3.run(EventQueue.java:648)
	at java.awt.EventQueue$3.run(EventQueue.java:646)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:645)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)

}}}
"	defect	new	normal		Plugin tagging-preset-tester			template_report invalid selection type	
