Modify

Opened 16 years ago

Closed 16 years ago

Last modified 16 years ago

#3183 closed defect (fixed)

Null Pointer Exception when loading GPX file

Reported by: thomas.sprinkmeier@… Owned by: team
Priority: major Milestone:
Component: Core Version: latest
Keywords: Cc:

Description

I'd just updated the jar file

$ md5sum /home/sprinkmeier/GPS/josm-latest.jar
d8162eaa209fe97d3b30d6657530496f  /home/sprinkmeier/GPS/josm-latest.jar

and executed it as I normally do:

$java -Xmx512M -jar /home/sprinkmeier/GPS/josm-latest.jar dump.2009.0710.2114.ttyUSB0.gpx

When I got this NPE:

Path: trunk
URL: http://josm.openstreetmap.de/svn/trunk
Repository Root: http://josm.openstreetmap.de/svn
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Revision: 1892
Node Kind: directory
Last Changed Author: Gubaer
Last Changed Rev: 1892
Last Changed Date: 2009-08-03 00:17:45 +0200 (Mon, 03 Aug 2009)


Memory Usage: 18 MB / 508 MB (6 MB allocated, but free)
Java version: 1.6.0_06



java.lang.NullPointerException
	at org.openstreetmap.josm.gui.layer.Layer.setName(Layer.java:172)
	at org.openstreetmap.josm.gui.layer.Layer.<init>(Layer.java:97)
	at org.openstreetmap.josm.gui.layer.GpxLayer.<init>(GpxLayer.java:83)
	at org.openstreetmap.josm.gui.layer.GpxLayer.<init>(GpxLayer.java:95)
	at org.openstreetmap.josm.io.GpxImporter.importData(GpxImporter.java:48)
	at org.openstreetmap.josm.actions.OpenFileAction.openFile(OpenFileAction.java:53)
	at org.openstreetmap.josm.Main.downloadFromParamString(Main.java:462)
	at org.openstreetmap.josm.Main.postConstructorProcessCmdLine(Main.java:365)
	at org.openstreetmap.josm.gui.MainApplication$2.run(MainApplication.java:151)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)

Nothing special about the GPX dump file, it opens just fine in -tested (version 1788).

I can start the -latest just file, but I get exactly the same NPE if I try to open the dump file once it's running.

Given that the function that died is setName() I suspected it might be because I have not 'named' my GPX dump properly:

<?xml version="1.0" encoding="UTF-8"?>
<gpx
 version="1.0"
creator="GPSBabel - http://www.gpsbabel.org"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.topografix.com/GPX/1/0"
xsi:schemaLocation="http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd">
<time>2009-07-10T11:45:21Z</time>
<bounds minlat="-00.3990173" minlon="52.5634766" maxlat="-72.0027924" maxlon="64.8071289"/>
<trk>
  <name>DG-100 tracklog</name>
  <desc>DG-100 GPS tracklog data</desc>
<trkseg>
<trkpt lat="-00.0568390" lon="53.3218384">
  <ele>0.000000</ele>
<time>2009-07-09T22:46:33Z</time>
  <speed>16.833334</speed>
</trkpt>

So I tried 'naming' the data by running it through prune, same NPE:

$ head NPE-TEST.gpx 
<?xml version="1.0" encoding="UTF-8"?>
<gpx version="1.0" creator="Prune v7 activityworkshop.net"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns="http://www.topografix.com/GPX/1/0" xsi:schemaLocation="http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd">
        <name>TestName</name>
        <desc>TestDescription</desc>
        <trk><name>TestName</name><number>1</number><trkseg>
...

The console reports an additional error:

Uncaught error fetching image:
java.lang.ClassCastException: [I cannot be cast to [B
        at java.awt.image.ColorModel.getAlpha(ColorModel.java:815)
        at java.awt.image.ColorModel.getRGB(ColorModel.java:860)
        at sun.awt.image.ImageRepresentation.convertToRGB(ImageRepresentation.java:283)
        at sun.awt.image.ImageRepresentation.setPixels(ImageRepresentation.java:497)
        at java.awt.image.AreaAveragingScaleFilter.accumPixels(AreaAveragingScaleFilter.java:196)
        at java.awt.image.AreaAveragingScaleFilter.setPixels(AreaAveragingScaleFilter.java:235)
        at sun.awt.image.ImageDecoder.setPixels(ImageDecoder.java:108)
        at sun.awt.image.PNGImageDecoder.sendPixels(PNGImageDecoder.java:540)
        at sun.awt.image.PNGImageDecoder.produceImage(PNGImageDecoder.java:460)
        at sun.awt.image.InputStreamImageSource.doFetch(InputStreamImageSource.java:246)
        at sun.awt.image.ImageFetcher.fetchloop(ImageFetcher.java:172)
        at sun.awt.image.ImageFetcher.run(ImageFetcher.java:136)

Let me know if I can do anything else.

Attachments (0)

Change History (4)

comment:1 by Gubaer, 16 years ago

There's an annoying bug in r1892. Please upgrade to latest (r1890 or higher).

comment:2 by Gubaer, 16 years ago

Resolution: fixed
Status: newclosed

comment:3 by anonymous, 16 years ago

Upgraded to 1900, working now.

Sorry if I wasted your time with an old bug, I though I had the latest version.

comment:4 by Gubaer, 16 years ago

Don't worry, I'm glad you reported it.

Modify Ticket

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