Hi everybody,

I intend to commit this sometime soon (in a week, maybe
earlier), so I'm looking for some comments or even testing.

Issue: If you have a style A that has a base style B, only
the main tags from A are considered. This means, that many
rules from B are not used.

I haven't tracked down exactly why and where it happens,
but I assume, that some code cleans up the osm data
straight after/while reading it and removes any "useless"
tags. To save memory.

Anyway, I found a solution: Update the "usedTags" of the
RuleSet after merging in the base-RuleSet.

The patch is simple, I think.


    Elrond
Index: uk/me/parabola/mkgmap/osmstyle/RuleSet.java
===================================================================
--- uk/me/parabola/mkgmap/osmstyle/RuleSet.java	(revision 1652)
+++ uk/me/parabola/mkgmap/osmstyle/RuleSet.java	(working copy)
@@ -138,6 +138,12 @@
 
 		index = newIndex;
 		rules = newIndex.getRules();
+		//System.out.println("Merging used tags: "
+		//		   + getUsedTags().toString()
+		//		   + " + "
+		//		   + rs.getUsedTags());
+		addUsedTags(rs.usedTags);
+		//System.out.println("Result: " + getUsedTags().toString());
 	}
 
 	/**
_______________________________________________
mkgmap-dev mailing list
[email protected]
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev

Reply via email to