Please try attached patch.

diff --git a/src/uk/me/parabola/mkgmap/osmstyle/StyledConverter.java b/src/uk/me/parabola/mkgmap/osmstyle/StyledConverter.java
index c45f2d9..c5f5bde 100644
--- a/src/uk/me/parabola/mkgmap/osmstyle/StyledConverter.java
+++ b/src/uk/me/parabola/mkgmap/osmstyle/StyledConverter.java
@@ -517,6 +517,15 @@ public class StyledConverter implements OsmConverter {
 
 	void addRoad(Way way, GType gt) {
 
+		String oneWay = way.getTag("oneway");
+		if("-1".equals(oneWay) || "reverse".equals(oneWay)) {
+			// it's a oneway street in the reverse direction
+			// so reverse the order of the nodes and change
+			// the oneway tag to "yes"
+			way.reverse();
+			way.addTag("oneway", "yes");
+		}
+
 		if("roundabout".equals(way.getTag("junction"))) {
 			String frigFactorTag = way.getTag("mkgmap:frig_roundabout");
 			if(frigFactorTag != null) {
diff --git a/src/uk/me/parabola/mkgmap/reader/osm/xml/Osm5XmlHandler.java b/src/uk/me/parabola/mkgmap/reader/osm/xml/Osm5XmlHandler.java
index 113a9e5..a0730f0 100644
--- a/src/uk/me/parabola/mkgmap/reader/osm/xml/Osm5XmlHandler.java
+++ b/src/uk/me/parabola/mkgmap/reader/osm/xml/Osm5XmlHandler.java
@@ -275,13 +275,6 @@ class Osm5XmlHandler extends DefaultHandler {
 		} else if (mode == MODE_WAY) {
 			if (qName.equals("way")) {
 				mode = 0;
-				if("-1".equals(currentWay.getTag("oneway"))) {
-					// it's a oneway street in the reverse direction
-					// so reverse the order of the nodes and change
-					// the oneway tag to "yes"
-					currentWay.reverse();
-					currentWay.addTag("oneway", "yes");
-				}
 				String highway = currentWay.getTag("highway");
 				if(highway != null ||
 				   "ferry".equals(currentWay.getTag("route"))) {
_______________________________________________
mkgmap-dev mailing list
[email protected]
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev

Reply via email to