diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | lib/fileutils.rb | 10 |
2 files changed, 9 insertions, 5 deletions
@@ -1,3 +1,7 @@ +Tue Aug 5 17:58:57 2003 WATANABE Hirofumi <eban@ruby-lang.org> + + * lib/fileutils.rb (install): should preserve timestamp only. + Tue Aug 5 15:47:34 2003 Nobuyoshi Nakada <nobu@ruby-lang.org> * eval.c (rb_load): should preserve current source file/line. diff --git a/lib/fileutils.rb b/lib/fileutils.rb index d6714229a9..dfec5f9005 100644 --- a/lib/fileutils.rb +++ b/lib/fileutils.rb @@ -639,10 +639,10 @@ module FileUtils fu_each_src_dest(src, dest) do |s,d| unless FileTest.exist?(d) and compare_file(s,d) - fu_preserve_attr(options[:preserve], s, d) { - remove_file d, true - copy_file s, d - } + remove_file d, true + st = File.stat(s) if options[:preserve] + copy_file s, d + File.utime st.atime, st.mtime, d if options[:preserve] File.chmod options[:mode], d if options[:mode] end end @@ -769,7 +769,7 @@ module FileUtils 'copy' => %w( preserve noop verbose ), 'cp' => %w( preserve noop verbose ), 'cp_r' => %w( preserve noop verbose ), - 'install' => %w( mode noop verbose ), + 'install' => %w( preserve mode noop verbose ), 'link' => %w( force noop verbose ), 'ln' => %w( force noop verbose ), 'ln_s' => %w( force noop verbose ), |