Juergen Buchner wrote:

> the reason for the error seems to be the following lines:
> # if data file given in rule file, prepend rule file's path

> Here "/" is assumed to be the directory separator, which is wrong if
> or/p is running under Windows. When adding the lines to

Better:

  if ($rule_file =~ m!(.*)[/\\](.*)! && defined($data))
  {
      $data = $1.'/'.$data;
  }

> it works with Windows. Since I'm not an expert Perl programmer I'm not
> sure if this is the preferred way to implement this platform
> independent ...

I think the File::Spec module is the right way, but as long as we are 
only targeting *nix (including Linux, OS X, etc) and Windows and not 
some more obscure operation systems (Mac OS 9, VMS etc), the [/\\] in 
the regex is enough.

BTW: Windows understands "/" as path separator, too. It's just that some 
Windows programs are more picky. Including cmd.exe, sadly.

cu
Henry

PS: I'd even recommend to write the regex as m!^(.*)[/\\]!, or even 
m!^(.*)[/\\][^/\\]+$!, to be cleaner.

_______________________________________________
Tilesathome mailing list
[email protected]
http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/tilesathome

Reply via email to