logo separator

[mkgmap-dev] Error in style file relations?

From Steve Ratcliffe steve at parabola.me.uk on Fri Feb 2 13:04:36 GMT 2018

Hi

Here is a patch to fix the problem where commands that
are not separated by a semi-colon are not ignored.

Various possible errors are now caught instead of
being silently ignored.

In the original relation file that Gerd fixed, there was the
following:

$route=road & $network='e-road' {
   apply {
	add ref='${ref}';
	add int_ref='${int_ref}';
	add network='e-road'                # missing semi-colon
	add mkgmap:fast_road='yes';
   }
}

this was being read as:

$route=road & $network='e-road' {
   apply {
     add ref='${ref}';
	add int_ref='${int_ref}';
	add network='e-road' | 'add' | 'mkgmap:fast_road' | '=' | 'yes';
   }
}

Since 'e-road' does not contain any variables, then it was always
the value that 'network' was set to.

Now you do not need any of the semi-colons, so the original code
would be read as intended.

I don't believe that there were any more similar errors
in the style file, so this patch should have no effect for the
default style.

Of course it may find errors in custom styles, or something that did not 
work before may suddenly start to work as intended causing a difference.

..Steve
-------------- next part --------------
A non-text attachment was scrubbed...
Name: command-lists.patch
Type: text/x-patch
Size: 5944 bytes
Desc: not available
URL: <http://www.mkgmap.org.uk/pipermail/mkgmap-dev/attachments/20180202/39a98baa/attachment.bin>


More information about the mkgmap-dev mailing list