diff options
author | Joey Hess <joey@kitenet.net> | 2014-02-23 14:09:51 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2014-02-23 14:09:51 -0400 |
commit | c5d63c549de267dfc5de44f60b619f576e57023d (patch) | |
tree | 41f3b5d1023e8143324caffaebbbbf0cfadb762b /IkiWiki.pm | |
parent | 7e1b8c4f9c69b5f9bd9096129f2ad961b97a1022 (diff) | |
parent | 2a143bfd0be3f286249a19304bb908e3b0d63cc1 (diff) | |
download | ikiwiki-c5d63c549de267dfc5de44f60b619f576e57023d.tar ikiwiki-c5d63c549de267dfc5de44f60b619f576e57023d.tar.gz |
Merge remote-tracking branch 'anarcat/dev/syslog_utf8'
Diffstat (limited to 'IkiWiki.pm')
-rw-r--r-- | IkiWiki.pm | 14 |
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"; |