Author: markt
Date: Wed Dec 16 17:02:01 2009
New Revision: 891312

URL: http://svn.apache.org/viewvc?rev=891312&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=48252
Prevent stack overflow when setting jkHome on NIO connector

Modified:
    tomcat/tc6.0.x/trunk/STATUS.txt
    tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/IntrospectionUtils.java
    tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java
    tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml

Modified: tomcat/tc6.0.x/trunk/STATUS.txt
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=891312&r1=891311&r2=891312&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/STATUS.txt (original)
+++ tomcat/tc6.0.x/trunk/STATUS.txt Wed Dec 16 17:02:01 2009
@@ -290,11 +290,6 @@
   +1: markt, jim
   -1: 
 
-* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=48252
-  Patch attached to BZ
-  +1: fhanik, markt, jim
-  -1: 
-
 * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=47609
   Implment fail-safe EOL conversion for source disributions
   Based on a patch provided by sebb

Modified: 
tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/IntrospectionUtils.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/IntrospectionUtils.java?rev=891312&r1=891311&r2=891312&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/IntrospectionUtils.java 
(original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/IntrospectionUtils.java 
Wed Dec 16 17:02:01 2009
@@ -259,6 +259,9 @@
      * you can have setDebug(1).
      */
     public static boolean setProperty(Object o, String name, String value) {
+       return setProperty(o,name,value,true);
+    }
+    public static boolean setProperty(Object o, String name, String 
value,boolean invokeSetProperty) {
         if (dbg > 1)
             d("setProperty(" + o.getClass() + " " + name + "=" + value + ")");
 
@@ -345,7 +348,7 @@
             }
 
             // Ok, no setXXX found, try a setProperty("name", "value")
-            if (setPropertyMethodBool != null || setPropertyMethodVoid != 
null) {
+            if (invokeSetProperty && (setPropertyMethodBool != null || 
setPropertyMethodVoid != null)) {
                 Object params[] = new Object[2];
                 params[0] = name;
                 params[1] = value;

Modified: tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java?rev=891312&r1=891311&r2=891312&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java 
(original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java Wed 
Dec 16 17:02:01 2009
@@ -545,7 +545,7 @@
             } else if (name.startsWith(socketName)) {
                 return IntrospectionUtils.setProperty(socketProperties, 
name.substring(socketName.length()), value);
             } else {
-                return IntrospectionUtils.setProperty(this,name,value);
+                return IntrospectionUtils.setProperty(this,name,value,false);
             }
         }catch ( Exception x ) {
             log.error("Unable to set attribute \""+name+"\" to 
\""+value+"\"",x);

Modified: tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml?rev=891312&r1=891311&r2=891312&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Wed Dec 16 17:02:01 2009
@@ -358,6 +358,10 @@
         the default Blocking IO Java connector.
       </fix>
       <fix>
+        <bug>48252</bug>: Fix stack overflow exception when setting jkHome on
+        NIO connector. (fhanik)
+      </fix>
+      <fix>
         <bug>48311</bug>: Only the APR lifecycle listener should try and
         initialise APR. (markt)
       </fix>



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to