
On Thu, Dec 23, 2010 at 08:14:27PM +0200, Marko Mäkelä wrote:
On Thu, Dec 23, 2010 at 07:14:54PM +0200, Harri wrote:
I'm geting trouble with following options as well: --generate-sea=multipolygon,extend-sea-sectors,close-gaps=2000
r1751 did not have the problems and they appeared in r1752.
I did not upgrade yet, still at r1728. My scripts at http://www.polkupyoraily.net/osm/ use generate-sea=multipolygon for all tiles except one, which is generate-sea=multipolygon,extend-sea-sectors. I guess I should retry today's extract with r1752 and report if it works.
It does not work. This command from my osm2img.sh script (simplified) crashes: java -ea -Dlog.config=logging.properties -jar mkgmap.jar -c mkgmap.args The end of the mkgmap.log.0 looks comparable to the mkgmap.log.1 from a previous run with r1728. After stripping time stamps and sorting the lines, the files are almost equal. The differences do not seem related to generate-sea (except the different IDs of generated polygons). The last map tile (63240006) uses --generate-sea=multipolygon,extend-sea-sectors. All other tiles use just --generate-sea=multipolygon. Here is the stack trace: java.lang.NullPointerException at uk.me.parabola.mkgmap.reader.osm.SeaGenerator.end(SeaGenerator.java:432) at uk.me.parabola.mkgmap.reader.osm.OsmReadingHooksChain.end(OsmReadingHooksChain.java:78) at uk.me.parabola.mkgmap.reader.osm.xml.Osm5MapDataSource.load(Osm5MapDataSource.java:73) at uk.me.parabola.mkgmap.main.MapMaker.loadFromFile(MapMaker.java:145) at uk.me.parabola.mkgmap.main.MapMaker.makeMap(MapMaker.java:56) at uk.me.parabola.mkgmap.main.Main$1.call(Main.java:220) at uk.me.parabola.mkgmap.main.Main$1.call(Main.java:217) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) This seems to point to this line: coastRel.setFloodBlockerRules(fbRules.getWayRules()); Should it not skip this when fbRules == null, or should empty flood-blocking rules be assigned an object? Best regards, Marko