You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shiro.apache.org by lh...@apache.org on 2010/05/14 05:01:39 UTC

svn commit: r944087 - /incubator/shiro/trunk/web/src/main/java/org/apache/shiro/web/servlet/AbstractShiroFilter.java

Author: lhazlewood
Date: Fri May 14 03:01:38 2010
New Revision: 944087

URL: http://svn.apache.org/viewvc?rev=944087&view=rev
Log:
SHIRO-159: Moved thread binding logic inside of try/finally block.  If there are any errors that occur at all during binding or request execution, the ThreadContext will still be cleared.

Modified:
    incubator/shiro/trunk/web/src/main/java/org/apache/shiro/web/servlet/AbstractShiroFilter.java

Modified: incubator/shiro/trunk/web/src/main/java/org/apache/shiro/web/servlet/AbstractShiroFilter.java
URL: http://svn.apache.org/viewvc/incubator/shiro/trunk/web/src/main/java/org/apache/shiro/web/servlet/AbstractShiroFilter.java?rev=944087&r1=944086&r2=944087&view=diff
==============================================================================
--- incubator/shiro/trunk/web/src/main/java/org/apache/shiro/web/servlet/AbstractShiroFilter.java (original)
+++ incubator/shiro/trunk/web/src/main/java/org/apache/shiro/web/servlet/AbstractShiroFilter.java Fri May 14 03:01:38 2010
@@ -299,9 +299,10 @@ public abstract class AbstractShiroFilte
         ServletRequest request = prepareServletRequest(servletRequest, servletResponse, chain);
         ServletResponse response = prepareServletResponse(request, servletResponse, chain);
 
-        ThreadState threadState = bind(request, response);
+        ThreadState threadState = null;
 
         try {
+            threadState = bind(request, response);
             updateSessionLastAccessTime(request, response);
             executeChain(request, response, chain);
         } finally {