diff options
author | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2006-11-26 19:55:46 +0000 |
---|---|---|
committer | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2006-11-26 19:55:46 +0000 |
commit | 06137b95d419fd62a3c8065430fec302c2680454 (patch) | |
tree | 9d1f2381e60b1eb95524efb0b7965f45e9fcf106 | |
parent | 075c8b4d0b3feb2274bf6a27d32d3c6e798a18ff (diff) |
mercurial username setting patch
-rw-r--r-- | IkiWiki/Rcs/mercurial.pm | 12 | ||||
-rwxr-xr-x | t/mercurial.t | 5 |
2 files changed, 11 insertions, 6 deletions
diff --git a/IkiWiki/Rcs/mercurial.pm b/IkiWiki/Rcs/mercurial.pm index 66ff0996a..da2beb7cd 100644 --- a/IkiWiki/Rcs/mercurial.pm +++ b/IkiWiki/Rcs/mercurial.pm @@ -65,19 +65,23 @@ sub rcs_prepedit ($) { #{{{ return ""; } #}}} -sub rcs_commit ($$$) { #{{{ +sub rcs_commit ($$$;$$) { #{{{ my ($file, $message, $rcstoken, $user, $ipaddr) = @_; if (defined $user) { - $message="web commit by $user".(length $message ? ": $message" : ""); + $user = possibly_foolish_untaint($user); } elsif (defined $ipaddr) { - $message="web commit from $ipaddr".(length $message ? ": $message" : ""); + $user = "Anonymous from $ipaddr"; + } + else { + $user = "Anonymous"; } $message = possibly_foolish_untaint($message); - my @cmdline = ("hg", "-R", "$config{srcdir}", "commit", "-m", "$message"); + my @cmdline = ("hg", "-R", "$config{srcdir}", "commit", + "-m", "$message", "-u", "$user"); if (system(@cmdline) != 0) { warn "'@cmdline' failed: $!"; } diff --git a/t/mercurial.t b/t/mercurial.t index fc9ab68a3..c42e328c2 100755 --- a/t/mercurial.t +++ b/t/mercurial.t @@ -12,7 +12,7 @@ BEGIN { } } } -use Test::More tests => 9; +use Test::More tests => 10; BEGIN { use_ok("IkiWiki"); } @@ -27,7 +27,7 @@ system "hg init $config{srcdir}"; my $test1 = readfile("t/test1.mdwn"); writefile('test1.mdwn', $config{srcdir}, $test1); IkiWiki::rcs_add("test1.mdwn"); -IkiWiki::rcs_commit("test1.mdwn", "Added the first page", "moo"); +IkiWiki::rcs_commit("test1.mdwn", "Added the first page", "moo", "Joe User"); my @changes; @changes = IkiWiki::rcs_recentchanges(3); @@ -35,6 +35,7 @@ my @changes; is($#changes, 0); is($changes[0]{message}[0]{"line"}, "Added the first page"); is($changes[0]{pages}[0]{"page"}, "test1.mdwn"); +is($changes[0]{user}, "Joe User"); # Manual commit my $username = "Foo Bar"; |