Author: sshafroi
Date: 2008-06-17 08:43:42 +0200 (Tue, 17 Jun 2008)
New Revision: 6695
Modified:
trunk/war/src/main/java/no/sesat/search/http/filters/SiteLocatorFilter.java
Log:
Synchonize on session while creating request stack
Modified:
trunk/war/src/main/java/no/sesat/search/http/filters/SiteLocatorFilter.java
===================================================================
--- trunk/war/src/main/java/no/sesat/search/http/filters/SiteLocatorFilter.java
2008-06-16 09:39:25 UTC (rev 6694)
+++ trunk/war/src/main/java/no/sesat/search/http/filters/SiteLocatorFilter.java
2008-06-17 06:43:42 UTC (rev 6695)
@@ -390,10 +390,13 @@
if (request instanceof HttpServletRequest) {
HttpSession session = ((HttpServletRequest) request).getSession();
- Stack<ServletRequest> stack = (Stack<ServletRequest>)
session.getAttribute(USER_REQUEST_STACK);
- if (null == stack) {
- stack = new Stack<ServletRequest>();
- session.setAttribute(USER_REQUEST_STACK, stack);
+ Stack<ServletRequest> stack;
+ synchronized (session) {
+ stack = (Stack<ServletRequest>)
session.getAttribute(USER_REQUEST_STACK);
+ if (null == stack) {
+ stack = new Stack<ServletRequest>();
+ session.setAttribute(USER_REQUEST_STACK, stack);
+ }
}
if (stack.size() > REQUEST_QUEUE_SIZE) {
_______________________________________________
Kernel-commits mailing list
[email protected]
http://sesat.no/mailman/listinfo/kernel-commits