]> git.p6c8.net - selfforum.git/blobdiff - selfforum-cgi/shared/Conf/Admin.pm
added methods: joinlist, printscrap and scrap2file
[selfforum.git] / selfforum-cgi / shared / Conf / Admin.pm
index 5d077369a9abc6953bd85444ad8d647be52cf7ab..c834c37206819056304af97b080417f53ede07a9 100644 (file)
@@ -16,7 +16,7 @@ use vars qw(
   $VERSION
 );
 
-use Lock qw(:READ);
+use Lock;
 
 use XML::DOM;
 
@@ -93,9 +93,10 @@ sub read_admin_conf ($) {
   my %conf;
 
   if (-f $filename) {
-    if (lock_file ($filename)) {
-      my $xml = new XML::DOM::Parser -> parsefile ($filename);
-      violent_unlock_file ($filename) unless (unlock_file ($filename));
+    my $admin = new Lock ($filename);
+    if ($admin -> lock(LH_SHARED)) {
+      my $xml = new XML::DOM::Parser -> parsefile ($admin -> filename);
+      $admin -> unlock;
 
       # write data into the hash
       #
@@ -198,10 +199,6 @@ sub read_admin_conf ($) {
           -> getFirstChild -> getData
       };
     }
-
-    else {
-      violent_unlock_file ($filename);
-    }
   }
 
   # return
@@ -213,4 +210,4 @@ sub read_admin_conf ($) {
 
 #
 #
-### end of Conf::Admin #########################################################
+### end of Conf::Admin #########################################################
\ No newline at end of file

patrick-canterino.de