Bug 51206

Summary: CATALINA_BASE is not visible to setenv.sh
Product: Tomcat 6 Reporter: Filip Hanik <fhanik>
Component: CatalinaAssignee: Tomcat Developers Mailing List <dev>
Status: RESOLVED FIXED    
Severity: normal    
Priority: P2    
Version: 6.0.32   
Target Milestone: default   
Hardware: PC   
OS: Linux   

Description Filip Hanik 2011-05-16 17:54:55 UTC
If this variable is not visible, it makes the setenv.sh script sort of useless

Index: bin/catalina.sh
===================================================================
--- bin/catalina.sh	(revision 1103812)
+++ bin/catalina.sh	(working copy)
@@ -116,6 +116,9 @@
 # Ensure that any user defined CLASSPATH variables are not used on startup,
 # but allow them to be specified in setenv.sh, in rare case when it is needed.
 CLASSPATH=
+if [ -z "$CATALINA_BASE" ] ; then
+  CATALINA_BASE="$CATALINA_HOME"
+fi
 
 if [ -r "$CATALINA_BASE"/bin/setenv.sh ]; then
   . "$CATALINA_BASE"/bin/setenv.sh
@@ -163,10 +166,8 @@
   fi
 fi
 
-if [ -z "$CATALINA_BASE" ] ; then
-  CATALINA_BASE="$CATALINA_HOME"
-fi
 
+
 # Add tomcat-juli.jar and bootstrap.jar to classpath
 # tomcat-juli.jar can be over-ridden per instance
 if [ ! -z "$CLASSPATH" ] ; then
Comment 1 Filip Hanik 2011-05-16 18:13:27 UTC
The fix will have to be modified a little bit to avoid calling CATALINA_HOME/bin/setenv.sh twice
Comment 2 Mark Thomas 2011-06-21 07:54:23 UTC
Rainer implemented this in 7.0.x and it will be included in 7.0.17 onwards.
Comment 3 Mark Thomas 2011-06-29 14:23:32 UTC
Proposed for 6.0.x
Comment 4 Mark Thomas 2011-07-13 15:26:09 UTC
This has been fixed in 6.0.x and will be included in 6.0.33 onwards.