diff options
author | Joey Hess <joey@gnu.kitenet.net> | 2010-04-16 17:02:29 -0400 |
---|---|---|
committer | Joey Hess <joey@gnu.kitenet.net> | 2010-04-16 17:02:29 -0400 |
commit | b14f84c4acccbc8450a9102b3b647013989b27bb (patch) | |
tree | bc02d7e1c6228775b46040de2945382324a0c4a9 /IkiWiki/Render.pm | |
parent | 6c5c0f8c682a2727bb71652668fef90a40d99f25 (diff) | |
download | ikiwiki-b14f84c4acccbc8450a9102b3b647013989b27bb.tar ikiwiki-b14f84c4acccbc8450a9102b3b647013989b27bb.tar.gz |
--gettime revamp
* Rename --getctime to --gettime. (The old name still works for
backwards compatability.)
* --gettime now also looks up last modification time.
* Add rcs_getmtime to plugin API; currently only implemented
for git.
Diffstat (limited to 'IkiWiki/Render.pm')
-rw-r--r-- | IkiWiki/Render.pm | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/IkiWiki/Render.pm b/IkiWiki/Render.pm index e98888d76..e1cb68462 100644 --- a/IkiWiki/Render.pm +++ b/IkiWiki/Render.pm @@ -365,14 +365,26 @@ sub find_new_files ($) { } else { push @new, $file; - if ($config{getctime} && -e "$config{srcdir}/$file") { + if ($config{gettime} && -e "$config{srcdir}/$file") { eval { - my $time=rcs_getctime("$config{srcdir}/$file"); - $pagectime{$page}=$time; + my $ctime=rcs_getctime("$config{srcdir}/$file"); + if ($ctime > 0) { + $pagectime{$page}=$ctime; + } }; if ($@) { print STDERR $@; } + my $mtime; + eval { + my $mtime=rcs_getmtime("$config{srcdir}/$file"); + }; + if ($@) { + print STDERR $@; + } + elsif ($mtime > 0) { + utime($mtime, $mtime, "$config{srcdir}/$file"); + } } } $pagecase{lc $page}=$page; |