aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki.pm
diff options
context:
space:
mode:
authorJoey Hess <joey@kitenet.net>2014-02-23 14:09:51 -0400
committerJoey Hess <joey@kitenet.net>2014-02-23 14:09:51 -0400
commitc5d63c549de267dfc5de44f60b619f576e57023d (patch)
tree41f3b5d1023e8143324caffaebbbbf0cfadb762b /IkiWiki.pm
parent7e1b8c4f9c69b5f9bd9096129f2ad961b97a1022 (diff)
parent2a143bfd0be3f286249a19304bb908e3b0d63cc1 (diff)
downloadikiwiki-c5d63c549de267dfc5de44f60b619f576e57023d.tar
ikiwiki-c5d63c549de267dfc5de44f60b619f576e57023d.tar.gz
Merge remote-tracking branch 'anarcat/dev/syslog_utf8'
Diffstat (limited to 'IkiWiki.pm')
-rw-r--r--IkiWiki.pm14
1 files changed, 12 insertions, 2 deletions
diff --git a/IkiWiki.pm b/IkiWiki.pm
index eb480969b..a254177f2 100644
--- a/IkiWiki.pm
+++ b/IkiWiki.pm
@@ -743,6 +743,7 @@ sub debug ($) {
}
my $log_open=0;
+my $log_failed=0;
sub log_message ($$) {
my $type=shift;
@@ -753,9 +754,18 @@ sub log_message ($$) {
Sys::Syslog::openlog('ikiwiki', '', 'user');
$log_open=1;
}
- return eval {
- Sys::Syslog::syslog($type, "[$config{wikiname}] %s", join(" ", @_));
+ eval {
+ # keep a copy to avoid editing the original config repeatedly
+ my $wikiname = $config{wikiname};
+ utf8::encode($wikiname);
+ Sys::Syslog::syslog($type, "[$wikiname] %s", join(" ", @_));
};
+ if ($@) {
+ print STDERR "failed to syslog: $@" unless $log_failed;
+ $log_failed=1;
+ print STDERR "@_\n";
+ }
+ return $@;
}
elsif (! $config{cgi}) {
return print "@_\n";