X-Git-Url: https://git.p6c8.net/devedit.git/blobdiff_plain/8b44ea28c7eb989926e06b0fd8b861e13af05a26..f3bc7fa5e105cab71c404298ed14ed48caea1bfe:/modules/File/Access.pm?ds=inline diff --git a/modules/File/Access.pm b/modules/File/Access.pm index 6f84b3f..9dcd7e5 100644 --- a/modules/File/Access.pm +++ b/modules/File/Access.pm @@ -7,7 +7,7 @@ package File::Access; # with only one command # # Author: Patrick Canterino -# Last modified: 2003-10-13 +# Last modified: 2004-02-06 # use strict; @@ -23,7 +23,8 @@ use base qw(Exporter); @EXPORT = qw(dir_read file_create file_read - file_save); + file_save + file_unlock); # dir_read() # @@ -87,8 +88,8 @@ sub file_create($) return if(-e $file); - open(FILE,">",$file) or return; - close(FILE) or return; + open(FILE,">$file") or return; + close(FILE) or return; return 1; } @@ -106,9 +107,9 @@ sub file_read($) my $file = shift; local *FILE; - open(FILE,"<",$file) or return; + open(FILE,"<$file") or return; read(FILE, my $content, -s $file); - close(FILE) or return; + close(FILE) or return; return \$content; } @@ -125,18 +126,34 @@ sub file_read($) sub file_save($$) { my ($file,$content) = @_; - my $temp = $file.".temp"; local *FILE; - open(FILE,">",$temp) or return; + open(FILE,">$file") or return; print FILE $$content or do { close(FILE); return }; close(FILE) or return; - rename($temp,$file) or return; - return 1; } +# file_unlock() +# +# Remove a file from the list of files in use +# +# Params: 1. File::UseList object +# 2. File to remove +# +# Return: -nothing- + +sub file_unlock($$) +{ + my ($uselist,$file) = @_; + + $uselist->remove_file($file); + $uselist->save; + + return; +} + # it's true, baby ;-) 1;