From: kfujino Date: Wed, 14 Apr 2010 08:48:43 +0000 (+0000) Subject: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49116 X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=ad8736ade090a12d65838295eadd93a5c189f653;p=tomcat7.0 Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49116 If session is already invalid, expire session to prevent memory leak. git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@933881 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/java/org/apache/catalina/session/StandardManager.java b/java/org/apache/catalina/session/StandardManager.java index 5d5e57258..b48078ea7 100644 --- a/java/org/apache/catalina/session/StandardManager.java +++ b/java/org/apache/catalina/session/StandardManager.java @@ -397,6 +397,12 @@ public class StandardManager extends ManagerBase session.setManager(this); sessions.put(session.getIdInternal(), session); session.activate(); + if (!session.isValidInternal()) { + // If session is already invalid, + // expire session to prevent memory leak. + session.setValid(true); + session.expire(); + } sessionCounter++; } } catch (ClassNotFoundException e) {