Author: pero
Date: Fri Jan 26 01:17:39 2007
New Revision: 500194

URL: http://svn.apache.org/viewvc?view=rev&rev=500194
Log:
Porting from StandardSession - bugfix 37356: Ensure sessions time out 
correctly. 

Modified:
    
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/session/DeltaSession.java

Modified: 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/session/DeltaSession.java
URL: 
http://svn.apache.org/viewvc/tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/session/DeltaSession.java?view=diff&rev=500194&r1=500193&r2=500194
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/session/DeltaSession.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/session/DeltaSession.java
 Fri Jan 26 01:17:39 2007
@@ -44,6 +44,7 @@
 import javax.servlet.http.HttpSessionListener;
 
 import org.apache.catalina.Context;
+import org.apache.catalina.Globals;
 import org.apache.catalina.Manager;
 import org.apache.catalina.Session;
 import org.apache.catalina.SessionEvent;
@@ -253,6 +254,8 @@
      */
     protected transient int accessCount = 0;
 
+    private Object lock = new Object();
+
     // ----------------------------------------------------------- Constructors
     
     /**
@@ -644,12 +647,20 @@
 
         evaluateIfValid();
 
-        accessCount++;
+        if (Globals.STRICT_SERVLET_COMPLIANCE) {
+            synchronized (lock) {
+                accessCount++;
+            }
+        }
     }
 
     public void endAccess() {
         isNew = false;
-        accessCount--;
+        if (Globals.STRICT_SERVLET_COMPLIANCE) {
+            synchronized (lock) {
+                accessCount--;
+            }
+        }
         if(manager instanceof DeltaManager)
             ((DeltaManager)manager).registerSessionAtReplicationValve(this);
     }



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to