Author: markt
Date: Wed Jan 6 21:52:24 2016
New Revision: 1723414
URL: http://svn.apache.org/viewvc?rev=1723414&view=rev
Log:
Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=58809
Correctly recycle the cookies when mapping requests for parallel deployment
Modified:
tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java
tomcat/trunk/java/org/apache/catalina/connector/Request.java
Modified: tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java?rev=1723414&r1=1723413&r2=1723414&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java Wed Jan
6 21:52:24 2016
@@ -719,8 +719,8 @@ public class CoyoteAdapter implements Ad
// Recycle cookies and session info in case the
// correct context is configured with different
// settings
- req.getCookies().recycle();
request.recycleSessionInfo();
+ request.recycleCookieInfo(true);
}
break;
}
Modified: tomcat/trunk/java/org/apache/catalina/connector/Request.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/Request.java?rev=1723414&r1=1723413&r2=1723414&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/connector/Request.java (original)
+++ tomcat/trunk/java/org/apache/catalina/connector/Request.java Wed Jan 6
21:52:24 2016
@@ -452,8 +452,6 @@ public class Request implements HttpServ
parts = null;
}
partsParseException = null;
- cookiesParsed = false;
- cookiesConverted = false;
locales.clear();
localesParsed = false;
secure = false;
@@ -467,9 +465,9 @@ public class Request implements HttpServ
attributes.clear();
sslAttributesParsed = false;
notes.clear();
- cookies = null;
recycleSessionInfo();
+ recycleCookieInfo(false);
if (Globals.IS_SECURITY_ENABLED || Connector.RECYCLE_FACADES) {
parameterMap = new ParameterMap<>();
@@ -520,6 +518,16 @@ public class Request implements HttpServ
}
+ protected void recycleCookieInfo(boolean recycleCoyote) {
+ cookiesParsed = false;
+ cookiesConverted = false;
+ cookies = null;
+ if (recycleCoyote) {
+ getCoyoteRequest().getCookies().recycle();
+ }
+ }
+
+
// -------------------------------------------------------- Request Methods
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]