From: Joey Hess Date: Thu, 20 Nov 2008 17:55:57 +0000 (-0500) Subject: avoid adding ./ to urls unnecessarily X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/commitdiff_plain/dca6c835fe2e97331751e1cdedf1dbf0009309ef avoid adding ./ to urls unnecessarily This avoids constructing urls like "./../foo/". The leading "../" avoids any colon confusion already. I noticed in my logs that certain badly written web spiders (hello again, Yahoo!) fail to follow urls like ikiwiki was constructing to the right place (instead ending up at "./foo/") --- diff --git a/IkiWiki.pm b/IkiWiki.pm index 735dc97b1..17e2a2a85 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -942,9 +942,9 @@ sub beautify_urlpath ($) { #{{{ $url =~ s!/index.$config{htmlext}$!/!; } - # Ensure url is not an empty link, and - # if it's relative, make that explicit to avoid colon confusion. - if ($url !~ /^\//) { + # Ensure url is not an empty link, and if necessary, + # add ./ to avoid colon confusion. + if ($url !~ /^\// && $url !~ /^\.\.\//) { $url="./$url"; }