diff options
author | Thierry Vignaud <tv@mandriva.org> | 2009-10-07 16:31:47 +0000 |
---|---|---|
committer | Thierry Vignaud <tv@mandriva.org> | 2009-10-07 16:31:47 +0000 |
commit | 13f00299526653d35c7787bb46aaf11e8eae3b73 (patch) | |
tree | 0b88034d9a15fe01ebcf71da22425ae5e1a04f74 | |
parent | 6d0c7a137813b33cb4e658502153f7c31f8f80e7 (diff) | |
download | perl-MDK-Common-13f00299526653d35c7787bb46aaf11e8eae3b73.tar perl-MDK-Common-13f00299526653d35c7787bb46aaf11e8eae3b73.tar.gz perl-MDK-Common-13f00299526653d35c7787bb46aaf11e8eae3b73.tar.bz2 perl-MDK-Common-13f00299526653d35c7787bb46aaf11e8eae3b73.tar.xz perl-MDK-Common-13f00299526653d35c7787bb46aaf11e8eae3b73.zip |
(substInFile) call fsync() when editing a non empty file
-rw-r--r-- | NEWS | 1 | ||||
-rw-r--r-- | lib/MDK/Common/File.pm | 2 |
2 files changed, 3 insertions, 0 deletions
@@ -1,5 +1,6 @@ - substInFile: o ensure we keep old file as file.bak until we wrote new file + o call fsync() when editing a non empty file Version 1.2.20 - 13 August 2009, by Aurelien Lefebvre diff --git a/lib/MDK/Common/File.pm b/lib/MDK/Common/File.pm index 71fe71c..cdcfcd9 100644 --- a/lib/MDK/Common/File.pm +++ b/lib/MDK/Common/File.pm @@ -289,6 +289,8 @@ sub substInFile(&@) { &$f($_); print; } + open(my $F, $file); + fsync($F); unlink "$file$^I"; # remove old backup now that we'have closed new file } else { local *F; my $old = select F; # that way eof return true |