aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki/Plugin/bzr.pm
diff options
context:
space:
mode:
authorJoey Hess <joey@kitenet.net>2010-04-20 18:19:00 -0400
committerJoey Hess <joey@kitenet.net>2010-04-20 18:19:00 -0400
commit34e8c78c1c9bf65564c1a3086584158e5c3cc415 (patch)
treeba95100ac77e203def8c1529a9c128e85b8a7818 /IkiWiki/Plugin/bzr.pm
parent59ceeb5621ae0ae2bcb7501c6ac0c7a06562a7cc (diff)
parent64946f91982d85bb301cc9241459939c657d0eb9 (diff)
downloadikiwiki-34e8c78c1c9bf65564c1a3086584158e5c3cc415.tar
ikiwiki-34e8c78c1c9bf65564c1a3086584158e5c3cc415.tar.gz
Merge branch 'master' into autotag
Diffstat (limited to 'IkiWiki/Plugin/bzr.pm')
-rw-r--r--IkiWiki/Plugin/bzr.pm24
1 files changed, 15 insertions, 9 deletions
diff --git a/IkiWiki/Plugin/bzr.pm b/IkiWiki/Plugin/bzr.pm
index f79ca7c8f..e7c1b8d8e 100644
--- a/IkiWiki/Plugin/bzr.pm
+++ b/IkiWiki/Plugin/bzr.pm
@@ -286,14 +286,10 @@ sub rcs_diff ($) {
}
}
-sub rcs_getctime ($) {
- my ($file) = @_;
-
+sub extract_timestamp (@) {
# 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 |");
-
+ open (my $out, "@_ |");
my @log = bzr_log($out);
if (length @log < 1) {
@@ -303,12 +299,22 @@ sub rcs_getctime ($) {
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) = @_;
+
+ my @cmdline = ("bzr", "log", "--forward", "--limit", '1', "$config{srcdir}/$file");
+ return extract_timestamp(@cmdline);
}
sub rcs_getmtime ($) {
- error "rcs_getmtime is not implemented for bzr\n"; # TODO
+ my ($file) = @_;
+
+ my @cmdline = ("bzr", "log", "--limit", '1', "$config{srcdir}/$file");
+ return extract_timestamp(@cmdline);
}
1