X-Git-Url: https://git.p6c8.net/devedit.git/blobdiff_plain/7897c609d415e2362b8c42c3b918a7ebcb5c4bda..2ad9ec6883d81c3389d4ce307ad2d36b48aa0e5a:/modules/File/Access.pm?ds=sidebyside diff --git a/modules/File/Access.pm b/modules/File/Access.pm index d892ed8..70a1c04 100644 --- a/modules/File/Access.pm +++ b/modules/File/Access.pm @@ -7,7 +7,7 @@ package File::Access; # using only one command # # Author: Patrick Canterino -# Last modified: 2005-02-09 +# Last modified: 2005-04-09 # use strict; @@ -27,7 +27,6 @@ use base qw(Exporter); file_lock file_read file_save - file_unlock LOCK_SH LOCK_EX @@ -46,7 +45,7 @@ $has_flock = eval { local $SIG{'__DIE__'}; flock(STDOUT,0); 1 }; # Params: Directory # # Return: Hash reference: dirs => directories -# files => files +# files => files and symbolic links sub dir_read($) { @@ -72,7 +71,7 @@ sub dir_read($) { next if($entry eq '.' || $entry eq '..'); - if(-d $dir.'/'.$entry) + if(-d $dir.'/'.$entry && not -l $dir.'/'.$entry) { push(@dirs,$entry); } @@ -151,7 +150,6 @@ sub file_read($;$) read(FILE, my $content, -s $file); - file_lock(FILE,LOCK_UN) or do { close(FILE); return }; close(FILE) or return; return \$content; @@ -179,31 +177,11 @@ sub file_save($$;$) print FILE $$content or do { close(FILE); return }; - file_lock(FILE,LOCK_UN) or do { close(FILE); return }; close(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;