summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--IkiWiki/Plugin/bzr.pm20
-rw-r--r--debian/changelog2
2 files changed, 10 insertions, 12 deletions
diff --git a/IkiWiki/Plugin/bzr.pm b/IkiWiki/Plugin/bzr.pm
index 3712302ce..e7c1b8d8e 100644
--- a/IkiWiki/Plugin/bzr.pm
+++ b/IkiWiki/Plugin/bzr.pm
@@ -286,8 +286,10 @@ sub rcs_diff ($) {
}
}
-sub extract_timestamp ($) {
- my ($out) = @_;
+sub extract_timestamp (@) {
+ # XXX filename passes through the shell here, should try to avoid
+ # that just in case
+ open (my $out, "@_ |");
my @log = bzr_log($out);
if (length @log < 1) {
@@ -297,28 +299,22 @@ sub extract_timestamp ($) {
eval q{use Date::Parse};
error($@) if $@;
- my $ctime = str2time($log[0]->{"timestamp"});
- return $ctime;
+ my $time = str2time($log[0]->{"timestamp"});
+ return $time;
}
sub rcs_getctime ($) {
my ($file) = @_;
- # XXX filename passes through the shell here, should try to avoid
- # that just in case
my @cmdline = ("bzr", "log", "--forward", "--limit", '1', "$config{srcdir}/$file");
- open (my $out, "@cmdline |");
- return extract_timestamp($out);
+ return extract_timestamp(@cmdline);
}
sub rcs_getmtime ($) {
my ($file) = @_;
- # XXX filename passes through the shell here, should try to avoid
- # that just in case
my @cmdline = ("bzr", "log", "--limit", '1', "$config{srcdir}/$file");
- open (my $out, "@cmdline |");
- return extract_timestamp($out);
+ return extract_timestamp(@cmdline);
}
1
diff --git a/debian/changelog b/debian/changelog
index 01d650290..b7ec99463 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -60,6 +60,8 @@ ikiwiki (3.20100415) UNRELEASED; urgency=low
timestamps on basewiki files shipped in the deb are sane.
* autoindex: Switch to using %wikistate instead of abusing
$pagestate{index}.
+ * bzr: Support rcs_getmtime, and fix rcs_getctime implementation
+ (Jelmer Vernooij)
-- Joey Hess <joeyh@debian.org> Sun, 04 Apr 2010 12:17:11 -0400