From: markt Date: Mon, 17 Jan 2011 17:12:36 +0000 (+0000) Subject: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=50597 X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=747cab9e31e82fdfbea455e2364004d4fabb3ad9;p=tomcat7.0 Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=50597 Don't instantiate a new instance of a Filter if an instance was provided via the ServletContext.addFilter(String, Filter) method. Patch provided by Ismael Juma. git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@1059993 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/java/org/apache/catalina/core/ApplicationFilterConfig.java b/java/org/apache/catalina/core/ApplicationFilterConfig.java index d34b08562..f0e8ba94f 100644 --- a/java/org/apache/catalina/core/ApplicationFilterConfig.java +++ b/java/org/apache/catalina/core/ApplicationFilterConfig.java @@ -367,10 +367,10 @@ public final class ApplicationFilterConfig implements FilterConfig, Serializable this.filter = null; } else { - - // Allocate a new filter instance - getFilter(); - + // Allocate a new filter instance if necessary + if (filterDef.getFilter() == null) { + getFilter(); + } } } diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index ecde6fe57..93c10eb21 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -69,6 +69,12 @@ 50582: Refactor access logging so chunked encoding is not forced for all requests if bytes sent is logged. (markt) + + 50597: Don't instantiate a new instance of a Filter if + an instance was provided via the + ServletContext.addFilter(String, Filter) method. Patch + provided by Ismael Juma. (markt) +