Problem here was that no charset http header was being sent.
I fixed this globally by making cgi_custom_failure send the header.
Required changing its parameters.
showform($form, $buttons, $session, $q);
}
-sub cgi_custom_failure ($$) {
- my $header=shift;
+sub cgi_custom_failure ($$$) {
+ my $q=shift;
+ my $httpstatus=shift;
my $message=shift;
- print $header;
+ print $q->header(
+ -status => $httpstatus,
+ -charset => 'utf-8',
+ );
print $message;
# Internet Explod^Hrer won't show custom 404 responses
$session->delete();
cgi_savesession($session);
cgi_custom_failure(
- $q->header(-status => "403 Forbidden"),
+ $q, "403 Forbidden",
gettext("You are banned."));
}
}
if (! exists $pagesources{$page}) {
IkiWiki::cgi_custom_failure(
- $cgi->header(-status => "404 Not Found"),
+ $cgi,
+ "404 Not Found",
IkiWiki::misctemplate(gettext("missing page"),
"<p>".
sprintf(gettext("The page %s does not exist."),
if (! length $link) {
IkiWiki::cgi_custom_failure(
- $q->header(-status => "404 Not Found"),
+ $q,
+ "404 Not Found",
IkiWiki::misctemplate(gettext("missing page"),
"<p>".
sprintf(gettext("The page %s does not exist."),
* attachment: Fix several utf-8 problems.
* attachment: Fix reversion in attachment sorting by age.
* remove: Fix problem removing pages with utf-8 in the name.
+ * 404/goto: Fix 404 display of utf-8 pages.
-- Joey Hess <joeyh@debian.org> Wed, 02 Dec 2009 17:22:21 -0500