bzr: Add missing rcs_diff. (liw)

master
Joey Hess 2009-02-26 14:09:26 -05:00
parent 457d330758
commit 596b2906fd
3 changed files with 19 additions and 37 deletions

View File

@ -256,7 +256,23 @@ sub rcs_recentchanges ($) {
} }
sub rcs_diff ($) { sub rcs_diff ($) {
# TODO my $taintedrev=shift;
my ($rev) = $taintedrev =~ /^(\d+(\.\d+)*)$/; # untaint
my $prevspec = "before:" . $rev;
my $revspec = "revno:" . $rev;
my @cmdline = ("bzr", "diff", "--old", $config{srcdir},
"--new", $config{srcdir},
"-r", $prevspec . ".." . $revspec);
open (my $out, "@cmdline |");
my @lines = <$out>;
if (wantarray) {
return @lines;
}
else {
return join("", @lines);
}
} }
sub rcs_getctime ($) { sub rcs_getctime ($) {

2
debian/changelog vendored
View File

@ -10,7 +10,7 @@ ikiwiki (3.05) UNRELEASED; urgency=low
* Add tagged() PageSpec. * Add tagged() PageSpec.
* Updated German translation (Kai Wasserbäch). Closes: #516770 * Updated German translation (Kai Wasserbäch). Closes: #516770
* Setup automator: Prompt for password twice. Closes: #516973 * Setup automator: Prompt for password twice. Closes: #516973
* bzr: Add missing stub rcs_diff. * bzr: Add missing rcs_diff. (liw)
* comments: Avoid showing comment moderation button in prefs to non-admins. * comments: Avoid showing comment moderation button in prefs to non-admins.
-- Joey Hess <joeyh@debian.org> Sun, 15 Feb 2009 20:11:57 -0500 -- Joey Hess <joeyh@debian.org> Sun, 15 Feb 2009 20:11:57 -0500

View File

@ -24,38 +24,4 @@ Grepping to verify absence of rcs_diff:
>> seems to work. I am unfortunately not ready to set up a git repository that you >> seems to work. I am unfortunately not ready to set up a git repository that you
>> can pull from. --liw >> can pull from. --liw
diff --git a/IkiWiki/Plugin/.bzr.pm.swp b/IkiWiki/Plugin/.bzr.pm.swp [[done]] --[[Joey]]
new file mode 100644
index 0000000..712120c
Binary files /dev/null and b/IkiWiki/Plugin/.bzr.pm.swp differ
diff --git a/IkiWiki/Plugin/bzr.pm b/IkiWiki/Plugin/bzr.pm
index 783623d..f1d5854 100644
--- a/IkiWiki/Plugin/bzr.pm
+++ b/IkiWiki/Plugin/bzr.pm
@@ -256,7 +256,25 @@ sub rcs_recentchanges ($) {
}
sub rcs_diff ($) {
- # TODO
+ my $taintedrev=shift;
+ my ($rev) = $taintedrev =~ /^(\d+(\.\d+)*)$/; # untaint
+ print STDERR "taintedrev: $taintedrev\nrev: $rev\n";
+
+ my $prevspec = "before:" . $rev;
+ my $revspec = "revno:" . $rev;
+ my @cmdline = ("bzr", "diff", "--old", $config{srcdir},
+ "--new", $config{srcdir},
+ "-r", $prevspec . ".." . $revspec);
+ print STDERR "cmdline: @cmdline\n";
+ open (my $out, "@cmdline |");
+
+ my @lines = <$out>;
+ if (wantarray) {
+ return @lines;
+ }
+ else {
+ return join("", @lines);
+ }
}
sub rcs_getctime ($) {