Hi Jeffrey,
I've found a bug in clean method of Apache::Session::Lock::File when check 
lockfiles last access time.
In effects the result of expression:

        (stat($dir.'/'.$file))[8] - $now

is always negative and lock dir cleanup isn't done.
The patch simply inverts the check.

Bye,
        Enrico


--- File.pm     Sat Mar 30 01:54:18 2002
+++ File.pm-patched     Sat Mar 30 01:53:59 2002
@@ -133,7 +133,7 @@
      my @files = readdir(DIR);
      foreach my $file (@files) {
          if ($file =~ /^Apache-Session.*\.lock$/) {
-            if ((stat($dir.'/'.$file))[8] - $now >= $time) {
+            if ($now - (stat($dir.'/'.$file))[8] >= $time) {
                  open(FH, "+>$dir/".$file) || next;
                  flock(FH, LOCK_EX) || next;
                  unlink($dir.'/'.$file) || next;


=========================================================
         Enrico Sorcinelli - Gruppo E-Comm - Italia OnLine S.p.a. - www.iol.it
         E-Mail: [EMAIL PROTECTED] - [EMAIL PROTECTED]
========================================================= 

Reply via email to