Make --gettime be honored after initial setup.

Bugfix in passing: New files not treated as such when no rcs is used.
master
Joey Hess 2010-06-15 22:56:06 -04:00
parent f7d4904fee
commit 5f33532468
2 changed files with 32 additions and 27 deletions

View File

@ -300,6 +300,7 @@ sub find_src_files () {
my ($page, $underlay);
my $helper=sub {
my $file=decode_utf8($_);
return if -l $file || -d _;
$file=~s/^\.\///;
return if ! length $file;
@ -363,6 +364,35 @@ sub find_new_files ($) {
foreach my $file (@$files) {
my $page=pagename($file);
if ($config{rcs} && $config{gettime} &&
-e "$config{srcdir}/$file") {
if (! $times_noted) {
debug(sprintf(gettext("querying %s for file creation and modification times.."), $config{rcs}));
$times_noted=1;
}
eval {
my $ctime=rcs_getctime("$config{srcdir}/$file");
if ($ctime > 0) {
$pagectime{$page}=$ctime;
}
};
if ($@) {
print STDERR $@;
}
my $mtime;
eval {
$mtime=rcs_getmtime("$config{srcdir}/$file");
};
if ($@) {
print STDERR $@;
}
elsif ($mtime > 0) {
utime($mtime, $mtime, "$config{srcdir}/$file");
}
}
if (exists $pagesources{$page} && $pagesources{$page} ne $file) {
# the page has changed its type
$forcerebuild{$page}=1;
@ -372,34 +402,8 @@ sub find_new_files ($) {
if (isinternal($page)) {
push @internal_new, $file;
}
elsif ($config{rcs}) {
else {
push @new, $file;
if ($config{gettime} && -e "$config{srcdir}/$file") {
if (! $times_noted) {
debug(sprintf(gettext("querying %s for file creation and modification times.."), $config{rcs}));
$times_noted=1;
}
eval {
my $ctime=rcs_getctime("$config{srcdir}/$file");
if ($ctime > 0) {
$pagectime{$page}=$ctime;
}
};
if ($@) {
print STDERR $@;
}
my $mtime;
eval {
$mtime=rcs_getmtime("$config{srcdir}/$file");
};
if ($@) {
print STDERR $@;
}
elsif ($mtime > 0) {
utime($mtime, $mtime, "$config{srcdir}/$file");
}
}
}
$pagecase{lc $page}=$page;
if (! exists $pagectime{$page}) {

1
debian/changelog vendored
View File

@ -18,6 +18,7 @@ ikiwiki (3.20100611) UNRELEASED; urgency=low
* calendar: Tune archive_pagespec to only match pages, not other files.
* Fix issues with combining unicode srcdirs and source files.
(Workaround bug #586045)
* Make --gettime be honored after initial setup.
-- Joey Hess <joeyh@debian.org> Fri, 11 Jun 2010 13:39:15 -0400