ikiwiki/doc/bugs/Http_error_500_when_using_m...

31 lines
1.2 KiB
Markdown

This is [[done]]
The mercurial backend is broken when no changelog message is given.
Here is a quick patch, partialy copying the svn backend.
--- /usr/share/perl5/IkiWiki/Rcs/mercurial.pm 2007-03-18 23:19:40.000000000 +0100
+++ ./mercurial.pm 2007-03-24 13:11:36.000000000 +0100
@@ -70,12 +70,15 @@
if (defined $user) {
$user = possibly_foolish_untaint($user);
+ $message="web commit by $user".(length $message ? ": $message" : "");
}
elsif (defined $ipaddr) {
$user = "Anonymous from $ipaddr";
+ $message="web commit from $ipaddr".(length $message ? ": $message" : "");
}
else {
$user = "Anonymous";
+ $message="web commit by Anonymous".(length $message ? ": $message" : "");
}
$message = possibly_foolish_untaint($message);
> The svn backend puts the user info in the message because that's the only
> way to store the user info, unlike with mercurial. The svn plugin also
> removes that info when getting the RecentChanges info. Since mercurial
> does not do that, it seemed better to me to test for an empty message and
> set it to a dummy commit string, which I've [[bugs/done]]. --[[Joey]]
>>Thanks for the correct fix, Joey. --hb