X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/c22f316ae153af4dba1a8a09ee743807d636bace..9b3c1867c8fb53c73cdad85dc73578261df481af:/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 <span class=\"error\">".
 						gettext("Error").": $error"."</span>]]";
 				}