logo separator

[mkgmap-dev] NPE with mkgmap 3320

From UliBaer ulibaer at gmail.com on Sat Aug 2 16:17:35 BST 2014

With the latest versions (tried, back until 3316) of mkgmap i'm getting a NPE
with a new setup on an older 32Bit XP Machine:

java.lang.NullPointerException
        at uk.me.parabola.imgfmt.app.net.RoadDef.compareTo(RoadDef.java:700)
        at uk.me.parabola.imgfmt.app.net.RoadDef.compareTo(RoadDef.java:56)
        at java.util.HashMap.compareComparables(Unknown Source)
        at java.util.HashMap$TreeNode.treeify(Unknown Source)
        at java.util.HashMap.treeifyBin(Unknown Source)
        at java.util.HashMap.putVal(Unknown Source)
        at java.util.HashMap.put(Unknown Source)
        at uk.me.parabola.imgfmt.app.net.TableA.addArc(TableA.java:93)
        at uk.me.parabola.imgfmt.app.net.NOD1Part.addNode(NOD1Part.java:229)
        at
uk.me.parabola.imgfmt.app.net.RoadNetwork.splitCenters(RoadNetwork.ja
va:239)
        at
uk.me.parabola.imgfmt.app.net.RoadNetwork.getCenters(RoadNetwork.java
:250)
        at
uk.me.parabola.mkgmap.build.MapBuilder.makeMap(MapBuilder.java:231)
        at uk.me.parabola.mkgmap.main.MapMaker.makeMap(MapMaker.java:120)
        at uk.me.parabola.mkgmap.main.MapMaker.makeMap(MapMaker.java:82)
        at uk.me.parabola.mkgmap.main.Main$1.call(Main.java:253)
        at uk.me.parabola.mkgmap.main.Main$1.call(Main.java:249)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
Source)
        at java.lang.Thread.run(Unknown Source)
Exiting - if you want to carry on regardless, use the --keep-going option
Number of ExitExceptions: 1 

It is in this code segment:

	public int compareTo(RoadDef other) {
		// sort by city name - this is used to group together
		// roads that have been split into segments
		if(other == this)
			return 0;

		// TODO: look at what this is doing...
		if(city != null && other.city != null)
			return city.getName().compareTo(other.city.getName()); <--- Here happens
the NPE
		if (hashCode() == other.hashCode())
			return 0;
		else if (hashCode() < other.hashCode())
			return -1;
		else
			return 0;
	}

*This happens when running with "--max-jobs=2" (it is a core2duo machine)
but when running with "--max-jobs=1" the error does NOT occur... :?*

Best regards, Uli



--
View this message in context: http://gis.19327.n5.nabble.com/NPE-with-mkgmap-3320-tp5813472.html
Sent from the Mkgmap Development mailing list archive at Nabble.com.


More information about the mkgmap-dev mailing list