This is an automated email from the git hooks/post-receive script.

sebastic pushed a commit to branch master
in repository mkgmap.

commit 3f7bf1e17b7adb0c8f28f31910bc43abc4aef78a
Author: Bas Couwenberg <sebas...@xs4all.nl>
Date:   Fri May 1 19:48:02 2015 +0200

    Imported Upstream version 0.0.0+svn3552
---
 doc/options.txt                                    | 28 +++++++++----------
 doc/styles/internal-tags.txt                       | 24 ++++++++--------
 doc/styles/rules-filters.txt                       | 14 +++++-----
 doc/styles/rules.txt                               | 14 +++++-----
 doc/tutorial/publish.txt                           | 32 +++++++++++-----------
 resources/help/en/options                          | 22 +++++++--------
 resources/mkgmap-version.properties                |  4 +--
 resources/styles/default/inc/address               |  2 ++
 scripts/download/pre-commit-crlf                   |  2 +-
 src/uk/me/parabola/mkgmap/main/MapMaker.java       |  4 +--
 .../mkgmap/reader/osm/RestrictionRelation.java     | 32 ++++++++++++++--------
 .../mkgmap/reader/polish/PolishMapDataSource.java  | 24 ++++++++--------
 12 files changed, 107 insertions(+), 95 deletions(-)

diff --git a/doc/options.txt b/doc/options.txt
index 5e7456b..54d1300 100644
--- a/doc/options.txt
+++ b/doc/options.txt
@@ -283,20 +283,20 @@ drop-down. The default is "OSM map".
 :   Area name is displayed on Garmin units (or at least on eTrex) as the 
second 
 part of the mapname in the list of the individual maps.
 
-;--copyright-message=note
-:      Specify a copyright message for files that do not contain one.
-
-;--copyright-file=file
-:      Specify copyright messages from a file.
-Note that the first copyright message is not displayed on a device, but is 
-shown in BaseCamp.
-
-;--license-file=file
-:      Specify a file which content will be added as license. 
-All entries of all maps will be merged in the overview map.
-
-=== Optimization options ===
-
+;--copyright-message=note
+:      Specify a copyright message for files that do not contain one.
+
+;--copyright-file=file
+:      Specify copyright messages from a file.
+Note that the first copyright message is not displayed on a device, but is 
+shown in BaseCamp.
+
+;--license-file=file
+:      Specify a file which content will be added as license. 
+All entries of all maps will be merged in the overview map.
+
+=== Optimization options ===
+
 ;--reduce-point-density=NUM
 :      Simplifies the ways with the Douglas Peucker algorithm.
 NUM is the maximal allowed error distance, by which the resulting
diff --git a/doc/styles/internal-tags.txt b/doc/styles/internal-tags.txt
index 04a3af8..be2bd71 100644
--- a/doc/styles/internal-tags.txt
+++ b/doc/styles/internal-tags.txt
@@ -59,15 +59,15 @@ A112 | Usually only the first label is displayed. On some 
units the second label
 [options="header"]
 |=========================================================
 | Tag | Description     | Required mkgmap option
-| +mkgmap:way-has-pois+  | +true+ for ways that have at least one point with a 
tag +access=\*+, +barrier=\*+, or +highway=*+ | 'link-pois-to-ways'
-| +mkgmap:dead-end-check+  | Set to +false+ to disable the dead end check for 
a specific way | 'report-dead-ends'
-| +mkgmap:flare-check+  | Set to +true+ to force the flare check for a 
specific way, set to +false+ to disable it | 'check-roundabout-flares'
-| +mkgmap:dir-check+  | Set to +false+ to tell mkgmap to ignore the way when 
checking roundabouts for direction | 'check-roundabouts'
-| +mkgmap:no-dir-check+  | Set to +true+ to tell mkgmap to ignore the way when 
checking roundabouts for direction | 'check-roundabouts'
-| +mkgmap:synthesised+  | Set to +true+ to tell mkgmap that this is an 
additional way created using the continue statement in an action block and that 
it should be excluded from checks | 'check-roundabouts', 
'check-roundabout-flares'
-    
-|=========================================================
-
+| +mkgmap:way-has-pois+  | +true+ for ways that have at least one point with a 
tag +access=\*+, +barrier=\*+, or +highway=*+ | 'link-pois-to-ways'
+| +mkgmap:dead-end-check+  | Set to +false+ to disable the dead end check for 
a specific way | 'report-dead-ends'
+| +mkgmap:flare-check+  | Set to +true+ to force the flare check for a 
specific way, set to +false+ to disable it | 'check-roundabout-flares'
+| +mkgmap:dir-check+  | Set to +false+ to tell mkgmap to ignore the way when 
checking roundabouts for direction | 'check-roundabouts'
+| +mkgmap:no-dir-check+  | Set to +true+ to tell mkgmap to ignore the way when 
checking roundabouts for direction | 'check-roundabouts'
+| +mkgmap:synthesised+  | Set to +true+ to tell mkgmap that this is an 
additional way created using the continue statement in an action block and that 
it should be excluded from checks | 'check-roundabouts', 
'check-roundabout-flares'
+    
+|=========================================================
+
  
 .POI address tags
 [options="header"]
@@ -113,9 +113,9 @@ is used to assign the country location.
 | +mkgmap:admin_level10+  | Name of the +boundary=administrative+ 
relation/polygon with +admin_level=10+ the element is located in | 'bounds'    
 | +mkgmap:admin_level11+  | Name of the +boundary=administrative+ 
relation/polygon with +admin_level=11+ the element is located in | 'bounds'    
 | +mkgmap:postcode+  | Name of the postal code relation/polygon the element is 
located in | 'bounds'    
-| +mkgmap:area2poi+  | The value is +true+ if the POI is derived from a 
polygon | 'add-poi-to-areas'    
-| +mkgmap:line2poi+  | The value is +true+ if the POI is derived from a line | 
'add-poi-to-lines'    
-| +mkgmap:line2poitype+  | The tag is set for each POI generated from a line. 
Possible values are: +start+, +end+, +mid+, +inner+. | 'add-poi-to-lines'    
+| +mkgmap:area2poi+  | The value is +true+ if the POI is derived from a 
polygon | 'add-pois-to-areas'    
+| +mkgmap:line2poi+  | The value is +true+ if the POI is derived from a line | 
'add-pois-to-lines'    
+| +mkgmap:line2poitype+  | The tag is set for each POI generated from a line. 
Possible values are: +start+, +end+, +mid+, +inner+. | 'add-pois-to-lines'    
 | +mkgmap:exit_hint+  | +true+ for the part on link roads that should contain 
information about the exit | 'process-exits'    
 | +mkgmap:exit_hint_name+  | The +name+ tag value of the links exit node | 
'process-exits'    
 | +mkgmap:exit_hint_ref+  | The +ref+ tag value of the links exit node | 
'process-exits'    
diff --git a/doc/styles/rules-filters.txt b/doc/styles/rules-filters.txt
index 97fb833..9bd816c 100644
--- a/doc/styles/rules-filters.txt
+++ b/doc/styles/rules-filters.txt
@@ -135,13 +135,13 @@ Used to check for duplicate values. If the value of this 
tag is contained in the
 the value of the tag named as the argument to +not-contained+, then value
 of this tag is set to undefined.
 
-....
-type=route & route=bus & ref=* {
-   apply {
-      set route_ref='$(route_ref),${ref\|not-contained:,:route_ref}' \| 
'$(route_ref)' \| '${ref}';
-   }
-}
-....
+....
+type=route & route=bus & ref=* {
+   apply {
+      set route_ref='$(route_ref),${ref\|not-contained:,:route_ref}' \| 
'$(route_ref)' \| '${ref}';
+   }
+}
+....
 
 Here, +ref+ value is only added to +route_ref+ when it is not already 
contained in that list
 (with separator ','). Otherwise, the value of +route_ref+ is unchanged.
diff --git a/doc/styles/rules.txt b/doc/styles/rules.txt
index 5c427c8..8eff544 100644
--- a/doc/styles/rules.txt
+++ b/doc/styles/rules.txt
@@ -727,13 +727,13 @@ a single OSM element. This could be for clever effects 
created by
 stacking two lines on top of each other.
 For example if you want to mark a bridge in a distinctive way you
 could match on +bridge=yes+, you would then almost always use +continue+ so
-that the +highway+ tag could be matched later. If you failed to do this
-then there might be a break in the road for routing purposes.
-
-Note that when using the _continue_ statement, the action block
-of the rule (if there is one) will only be applied _within this rule_ and
-not during any following rule matches.  Use the _continue with_actions_
-statement if you want to change this behaviour (see next section).
+that the +highway+ tag could be matched later. If you failed to do this
+then there might be a break in the road for routing purposes.
+
+Note that when using the _continue_ statement, the action block
+of the rule (if there is one) will only be applied _within this rule_ and
+not during any following rule matches.  Use the _continue with_actions_
+statement if you want to change this behaviour (see next section).
 
 === continue with_actions ===
 The with_actions statement modifies the continue behaviour in such a way,
diff --git a/doc/tutorial/publish.txt b/doc/tutorial/publish.txt
index 3476975..5858b72 100644
--- a/doc/tutorial/publish.txt
+++ b/doc/tutorial/publish.txt
@@ -30,19 +30,19 @@ The default is "OSM map".
 --area-name::
 Area name is displayed on Garmin units (or at least on eTrex) as the
 second part of the mapname in the list of the individual maps.
-
---copyright-message=note::
-Specify a copyright message for files that do not contain one.
-A fixed copyright message that is visible in BaseCamp, but not on a
-device, is also included.
-
---copyright-file=file::
-Specify copyright messages from a file. Used if you need to display more
-than one copyright message or do not want the fixed copyright message to
-be included. Note that the first copyright message is not displayed on a
-device, but is shown in BaseCamp. You can make the first line of the
-copyright file blank to work around this.
-
---license-file=file::
-The contents of the file will be used as licence information to
-be added to the map.
+
+--copyright-message=note::
+Specify a copyright message for files that do not contain one.
+A fixed copyright message that is visible in BaseCamp, but not on a
+device, is also included.
+
+--copyright-file=file::
+Specify copyright messages from a file. Used if you need to display more
+than one copyright message or do not want the fixed copyright message to
+be included. Note that the first copyright message is not displayed on a
+device, but is shown in BaseCamp. You can make the first line of the
+copyright file blank to work around this.
+
+--license-file=file::
+The contents of the file will be used as licence information to
+be added to the map.
diff --git a/resources/help/en/options b/resources/help/en/options
index 5a978e6..b37dd71 100644
--- a/resources/help/en/options
+++ b/resources/help/en/options
@@ -290,17 +290,17 @@ Product description options:
   Area name is displayed on Garmin units (or at least on eTrex) as the second 
   part of the mapname in the list of the individual maps.
    
---copyright-message=note
-       Specify a copyright message for files that do not contain one.
-
---copyright-file=file
-       Specify copyright messages from a file.
-       Note that the first copyright message is not displayed on a device, but 
is 
-       shown in BaseCamp.
-
---license-file=file
-       Specify a file which content will be added as license. 
-  All entrys of all maps will be merged in the overview map.
+--copyright-message=note
+       Specify a copyright message for files that do not contain one.
+
+--copyright-file=file
+       Specify copyright messages from a file.
+       Note that the first copyright message is not displayed on a device, but 
is 
+       shown in BaseCamp.
+
+--license-file=file
+       Specify a file which content will be added as license. 
+  All entrys of all maps will be merged in the overview map.
 
 Optimization options:
 
diff --git a/resources/mkgmap-version.properties 
b/resources/mkgmap-version.properties
index e93b584..3b51c84 100644
--- a/resources/mkgmap-version.properties
+++ b/resources/mkgmap-version.properties
@@ -1,2 +1,2 @@
-svn.version: 3498
-build.timestamp: 2015-03-18T08:13:59+0000
+svn.version: 3552
+build.timestamp: 2015-04-29T07:57:34+0100
diff --git a/resources/styles/default/inc/address 
b/resources/styles/default/inc/address
index f01b26e..4a85973 100644
--- a/resources/styles/default/inc/address
+++ b/resources/styles/default/inc/address
@@ -59,6 +59,8 @@ mkgmap:country=CHE & mkgmap:city!=* & mkgmap:admin_level8=* { 
set mkgmap:city='$
  
 # Canada
 mkgmap:country=CAN & mkgmap:region!=* & mkgmap:admin_level4=* { set 
mkgmap:region='${mkgmap:admin_level4}' }
+mkgmap:country=CAN & mkgmap:city!=* & mkgmap:admin_level8=Toronto & 
mkgmap:admin_level9=* { set mkgmap:city='${mkgmap:admin_level9}' }
+mkgmap:country=CAN & mkgmap:city!=* & mkgmap:admin_level8=Ottawa & 
mkgmap:admin_level9=* { set mkgmap:city='${mkgmap:admin_level9}' }
 mkgmap:country=CAN & mkgmap:city!=* & mkgmap:admin_level8=* { set 
mkgmap:city='${mkgmap:admin_level8|subst:City of }' }
 
 # United States
diff --git a/scripts/download/pre-commit-crlf b/scripts/download/pre-commit-crlf
index e548139..c0b6a70 100755
--- a/scripts/download/pre-commit-crlf
+++ b/scripts/download/pre-commit-crlf
@@ -12,7 +12,7 @@ SVNLOOK=/usr/bin/svnlook
 $SVNLOOK changed -t "$TXN" "$REPOS" | while read kind file
 do
                $SVNLOOK -t "$TXN" cat "$REPOS" "$file" > $TMP
-               file $TMP | grep -q 'CRLF line'
+               file $TMP | grep -q 'with CRLF'
                if [ $? = 0 ]; then
                                echo "File '$file' contains CRLF line endings" 
>&2
                                exit 2
diff --git a/src/uk/me/parabola/mkgmap/main/MapMaker.java 
b/src/uk/me/parabola/mkgmap/main/MapMaker.java
index 567ebef..5b58556 100644
--- a/src/uk/me/parabola/mkgmap/main/MapMaker.java
+++ b/src/uk/me/parabola/mkgmap/main/MapMaker.java
@@ -113,8 +113,8 @@ public class MapMaker implements MapProcessor {
 
                        MapBuilder builder = new MapBuilder();
                        builder.config(args.getProperties());
-                       if (args.getProperties().getProperty("route", false)){
-                               if(! 
OverviewBuilder.OVERVIEW_PREFIX.equals(mapNamePrefix))
+                       if(! 
OverviewBuilder.OVERVIEW_PREFIX.equals(mapNamePrefix)){
+                               if (args.getProperties().containsKey("route") 
|| args.getProperties().containsKey("net"))
                                        builder.setDoRoads(true);
                        }
                        builder.makeMap(map, src);
diff --git a/src/uk/me/parabola/mkgmap/reader/osm/RestrictionRelation.java 
b/src/uk/me/parabola/mkgmap/reader/osm/RestrictionRelation.java
index 4e7b6fe..afc3044 100644
--- a/src/uk/me/parabola/mkgmap/reader/osm/RestrictionRelation.java
+++ b/src/uk/me/parabola/mkgmap/reader/osm/RestrictionRelation.java
@@ -46,6 +46,7 @@ public class RestrictionRelation extends Relation {
     private List<Long> toWayIds = new ArrayList<>(2);
     private List<Long> viaWayIds = new ArrayList<>(2);
     private List<Coord> viaPoints = new ArrayList<>(2);
+    private HashSet<Long> updatedViaWays = new HashSet<>(); 
     private Coord viaCoord;
     private String restriction;
        private byte exceptMask;
@@ -666,21 +667,25 @@ public class RestrictionRelation extends Relation {
                        return;
                if (viaWayIds.contains(way.getId()) == false)
                        return;
+               if(updatedViaWays.contains(way.getId())){
+                       log.error(messagePrefix, "internal error: via way is 
updated again");
+               }
                Coord first = way.getPoints().get(nodeIndices.get(0));
                Coord last = way.getPoints().get(
                                nodeIndices.get(nodeIndices.size() - 1));
                int posFirst = -1;
-               for (int i = 0; i < viaPoints.size(); i++) {
-                       if (first == viaPoints.get(i)) {
-                               posFirst = i;
-                               break;
-                       }
-               }
                int posLast = -1;
                for (int i = 0; i < viaPoints.size(); i++) {
-                       if (last == viaPoints.get(i)) {
+                       if (first == viaPoints.get(i)) 
+                               posFirst = i;
+                       if (last== viaPoints.get(i)) 
                                posLast = i;
-                               break;
+                       if (posFirst >= 0 && posLast >= 0){
+                               if (Math.abs(posLast - posFirst) == 1){
+                                       break;
+                               } else {
+//                                     log.error(messagePrefix, "check self 
intersection!");
+                               }
                        }
                }
                if (posFirst < 0  || posLast < 0){
@@ -688,7 +693,11 @@ public class RestrictionRelation extends Relation {
                        valid = false;
                        return;
                }
-               
+               if (Math.abs(posLast - posFirst) != 1){
+                       log.error(messagePrefix, "internal error: via way 
doesn't contain points in expected position");
+                       valid = false;
+                       return;
+               }
                List<Coord> midPoints = new ArrayList<>();
                for (int i = 1; i + 1 < nodeIndices.size(); i++) {
                        midPoints.add(way.getPoints().get(nodeIndices.get(i)));
@@ -712,11 +721,12 @@ public class RestrictionRelation extends Relation {
                        viaWayIds.add(wayPos+1, way.getId());
                }
                if (viaPoints.size() != viaWayIds.size()+1){
-                       log.error("internal error: number of via points and via 
ways no longer fits");
+                       log.error(messagePrefix,"internal error: number of via 
points and via ways no longer fits");
                        valid = false;
                } else if (viaPoints.size() > 6){
                        log.warn(messagePrefix,"has more than 6 via nodes, this 
is not supported");
                        valid = false;
-               } 
+               }
+               updatedViaWays.add(way.getId());
        }
 }
diff --git a/src/uk/me/parabola/mkgmap/reader/polish/PolishMapDataSource.java 
b/src/uk/me/parabola/mkgmap/reader/polish/PolishMapDataSource.java
index c6f5386..6890e74 100644
--- a/src/uk/me/parabola/mkgmap/reader/polish/PolishMapDataSource.java
+++ b/src/uk/me/parabola/mkgmap/reader/polish/PolishMapDataSource.java
@@ -131,9 +131,10 @@ public class PolishMapDataSource extends 
MapperBasedMapDataSource implements Loa
                        String line;
                        while ((line = in.readLine()) != null) {
                                ++lineNo;
-                               if (line.trim().isEmpty() || line.charAt(0) == 
';')
+                               line = line.trim();
+                               if (line.isEmpty() || line.charAt(0) == ';')
                                        continue;
-                               if (line.startsWith("[END"))
+                               if (line.toUpperCase().startsWith("[END"))
                                        endSection();
                                else if (line.charAt(0) == '[')
                                        sectionStart(line);
@@ -192,30 +193,29 @@ public class PolishMapDataSource extends 
MapperBasedMapDataSource implements Loa
         * @param line The raw line from the input file.
         */
        private void sectionStart(String line) {
-               String name = line.substring(1, line.length() - 1);
+               String name = line.substring(1, line.length() - 1).trim();
                log.debug("section name", name);
 
                extraAttributes = null;
 
-               if (name.equals("IMG ID")) {
+               if (name.equalsIgnoreCase("IMG ID")) {
                        section = S_IMG_ID;
-               } else if (name.equals("POI") || name.equals("RGN10") || 
name.equals("RGN20")) {
+               } else if (name.equalsIgnoreCase("POI") || name.equals("RGN10") 
|| name.equals("RGN20")) {
                        point = new MapPoint();
                        section = S_POINT;
-               } else if (name.equals("POLYLINE") || name.equals("RGN40")) {
+               } else if (name.equalsIgnoreCase("POLYLINE") || 
name.equals("RGN40")) {
                        polyline = new MapLine();
                        roadHelper.clear();
                        section = S_POLYLINE;
-               } else if (name.equals("POLYGON") || name.equals("RGN80")) {
+               } else if (name.equalsIgnoreCase("POLYGON") || 
name.equals("RGN80")) {
                        shape = new MapShape();
                        section = S_POLYGON;
-               }
-        else if (name.equals("Restrict")) {
+               } else if (name.equalsIgnoreCase("Restrict")) {
             restriction = new PolishTurnRestriction();
             section = S_RESTRICTION;
         }
                else
-                       log.info("Ignoring " + name + " section");
+                       System.out.println("Ignoring unrecognised section: " + 
name);
        }
 
        /**
@@ -310,8 +310,8 @@ public class PolishMapDataSource extends 
MapperBasedMapDataSource implements Loa
                        log.warn("short line? " + line);
                        return;
                }
-               String name = nameVal[0];
-               String value = nameVal[1];
+               String name = nameVal[0].trim();
+               String value = nameVal[1].trim();
 
                log.debug("LINE: ", name, "|", value);
                

-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-grass/mkgmap.git

_______________________________________________
Pkg-grass-devel mailing list
Pkg-grass-devel@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-grass-devel

Reply via email to