X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/c22f316ae153af4dba1a8a09ee743807d636bace..ed2935484496366578d25c13650139ddac8dfb8d:/IkiWiki.pm?ds=inline diff --git a/IkiWiki.pm b/IkiWiki.pm index 0a788f35b..1433af99b 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -1092,6 +1092,11 @@ sub cgiurl (@) { join("&", map $_."=".uri_escape_utf8($params{$_}), keys %params); } +sub cgiurl_abs (@) { + eval q{use URI}; + URI->new_abs(cgiurl(@_), $config{cgiurl}); +} + sub baseurl (;$) { my $page=shift; @@ -1156,7 +1161,7 @@ sub strftime_utf8 { # strftime doesn't know about encodings, so make sure # its output is properly treated as utf8. # Note that this does not handle utf-8 in the format string. - $strftime_encoding = POSIX::setlocale(&POSIX::LC_TIME) =~ m#\.([^@]+)# + ($strftime_encoding) = POSIX::setlocale(&POSIX::LC_TIME) =~ m#\.([^@]+)# unless defined $strftime_encoding; $strftime_encoding ? Encode::decode($strftime_encoding, POSIX::strftime(@_)) @@ -1476,6 +1481,8 @@ sub preprocess ($$$;$$) { if ($@) { my $error=$@; chomp $error; + eval q{use HTML::Entities}; + $error = encode_entities($error); $ret="[[!$command ". gettext("Error").": $error"."]]"; }