X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/438676af3781b89ddf4477d94e7310cf9e384dd0..ad01bcd8b49deed11f602c43d1da8235280d5d6b:/IkiWiki.pm diff --git a/IkiWiki.pm b/IkiWiki.pm index 1d9d2492c..efacb20ed 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -76,12 +76,14 @@ sub checkconfig () { #{{{ } if (defined $config{locale}) { eval q{use POSIX}; + error($@) if $@; $ENV{LANG} = $config{locale} if POSIX::setlocale(&POSIX::LC_TIME, $config{locale}); } if ($config{w3mmode}) { eval q{use Cwd q{abs_path}}; + error($@) if $@; $config{srcdir}=possibly_foolish_untaint(abs_path($config{srcdir})); $config{destdir}=possibly_foolish_untaint(abs_path($config{destdir})); $config{cgiurl}="file:///\$LIB/ikiwiki-w3m.cgi/".$config{cgiurl} @@ -360,6 +362,7 @@ sub displaytime ($) { #{{{ my $time=shift; eval q{use POSIX}; + error($@) if $@; # strftime doesn't know about encodings, so make sure # its output is properly treated as utf8 return decode_utf8(POSIX::strftime( @@ -593,7 +596,8 @@ sub saveindex () { #{{{ "ctime=$pagectime{$page} ". "src=$pagesources{$page}"; $line.=" dest=$_" foreach @{$renderedfiles{$page}}; - $line.=" link=$_" foreach @{$links{$page}}; + my %count; + $line.=" link=$_" foreach grep { ++$count{$_} == 1 } @{$links{$page}}; if (exists $depends{$page}) { $line.=" depends=".encode_entities($depends{$page}, " \t\n"); }