mercurial: Fix buggy getctime code.

The file passed to rcs_getctime is already absolute, and it was
trying to stick the srcdir on the front.

Also, eliminated potentially unsafe shelling.
master
Joey Hess 2010-06-18 12:48:05 -04:00
parent cb4b999297
commit 2797a659db
2 changed files with 5 additions and 6 deletions

View File

@ -236,15 +236,13 @@ sub rcs_diff ($) {
sub rcs_getctime ($) { sub rcs_getctime ($) {
my ($file) = @_; my ($file) = @_;
# XXX filename passes through the shell here, should try to avoid
# that just in case
my @cmdline = ("hg", "-R", $config{srcdir}, "log", "-v", my @cmdline = ("hg", "-R", $config{srcdir}, "log", "-v",
"--style", "default", "$config{srcdir}/$file"); "--style", "default", $file);
open (my $out, "@cmdline |"); open (my $out, "-|", @cmdline);
my @log = mercurial_log($out); my @log = (mercurial_log($out));
if (length @log < 1) { if (@log < 1) {
return 0; return 0;
} }

1
debian/changelog vendored
View File

@ -23,6 +23,7 @@ ikiwiki (3.20100611) UNRELEASED; urgency=low
* attachment: Support Windows paths when taking basename of client-supplied * attachment: Support Windows paths when taking basename of client-supplied
file name. file name.
* theme: New plugin, allows easily theming a site via the underlay. * theme: New plugin, allows easily theming a site via the underlay.
* mercurial: Fix buggy getctime code.
-- Joey Hess <joeyh@debian.org> Fri, 11 Jun 2010 13:39:15 -0400 -- Joey Hess <joeyh@debian.org> Fri, 11 Jun 2010 13:39:15 -0400