﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
1448	[PATCH] x2, import of incomplete NMEA sentences causes exception	FauxFaux	framm	"Many simplistic NMEA loggers just stop writing whenever is convenient, not bothering to put a complete sentence into the log file.

For example, a recent log of mine ended with:
{{{
$GPRMC,123456.12,A,1234.5678,N,00
}}}
...which is obviously incomplete, and invalid.

This produces the ""An unexpected exception has occoured."" dialog, with something like the following trace:
{{{
java.lang.StringIndexOutOfBoundsException: String index out of range: 3
	at java.lang.String.substring(String.java:1935)
	at org.openstreetmap.josm.io.NmeaReader.parseLatLon(NmeaReader.java:179)
	at org.openstreetmap.josm.io.NmeaReader.<init>(NmeaReader.java:150)
	at org.openstreetmap.josm.actions.OpenAction.openFileAsNmea(OpenAction.java:111)
	at org.openstreetmap.josm.actions.OpenAction.openFile(OpenAction.java:60)
	at org.openstreetmap.josm.actions.OpenAction.actionPerformed(OpenAction.java:49)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
	at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
	at java.awt.Component.processMouseEvent(Component.java:6134)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
	at java.awt.Component.processEvent(Component.java:5899)
	at java.awt.Container.processEvent(Container.java:2023)
	at java.awt.Component.dispatchEventImpl(Component.java:4501)
	at java.awt.Container.dispatchEventImpl(Container.java:2081)
	at java.awt.Component.dispatchEvent(Component.java:4331)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4301)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3965)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3895)
	at java.awt.Container.dispatchEventImpl(Container.java:2067)
	at java.awt.Window.dispatchEventImpl(Window.java:2458)
	at java.awt.Component.dispatchEvent(Component.java:4331)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
}}}
Perhaps ignoring errors that occour in the last sentence of a file would be sensible?"	defect	closed	major		Core	latest	fixed	StringIndexOutOfBoundsException;NMEA log import	
