Author: jfclere Date: Sat Aug 20 01:21:58 2005 New Revision: 234007 URL: http://svn.apache.org/viewcvs?rev=234007&view=rev Log: prevent core when libjvm.so is not found in linux.
Modified: jakarta/commons/proper/daemon/trunk/src/native/unix/native/java.c jakarta/commons/proper/daemon/trunk/src/native/unix/native/jsvc-unix.c Modified: jakarta/commons/proper/daemon/trunk/src/native/unix/native/java.c URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/daemon/trunk/src/native/unix/native/java.c?rev=234007&r1=234006&r2=234007&view=diff ============================================================================== --- jakarta/commons/proper/daemon/trunk/src/native/unix/native/java.c (original) +++ jakarta/commons/proper/daemon/trunk/src/native/unix/native/java.c Sat Aug 20 01:21:58 2005 @@ -56,7 +56,7 @@ /* Did we find ANY virtual machine? */ if (data->jnum==0) { log_error("Cannot find any VM in Java Home %s",data->path); - return(false); + return(NULL); } /* Select the VM */ Modified: jakarta/commons/proper/daemon/trunk/src/native/unix/native/jsvc-unix.c URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/daemon/trunk/src/native/unix/native/jsvc-unix.c?rev=234007&r1=234006&r2=234007&view=diff ============================================================================== --- jakarta/commons/proper/daemon/trunk/src/native/unix/native/jsvc-unix.c (original) +++ jakarta/commons/proper/daemon/trunk/src/native/unix/native/jsvc-unix.c Sat Aug 20 01:21:58 2005 @@ -638,21 +638,28 @@ char *p1=NULL; char *p2=NULL; - p1=strdup(libf); - tmp=strrchr(p1,'/'); - if (tmp!=NULL) tmp[0]='\0'; + /* + * There is no need to change LD_LIBRARY_PATH + * if we were not able to find a path to libjvm.so + * (additionaly a strdup(NULL) cores dump on my machine). + */ + if (libf!=NULL) { + p1=strdup(libf); + tmp=strrchr(p1,'/'); + if (tmp!=NULL) tmp[0]='\0'; - p2=strdup(p1); - tmp=strrchr(p2,'/'); - if (tmp!=NULL) tmp[0]='\0'; + p2=strdup(p1); + tmp=strrchr(p2,'/'); + if (tmp!=NULL) tmp[0]='\0'; - if (oldpath==NULL) snprintf(buf,2048,"%s:%s",p1,p2); - else snprintf(buf,2048,"%s:%s:%s",oldpath,p1,p2); + if (oldpath==NULL) snprintf(buf,2048,"%s:%s",p1,p2); + else snprintf(buf,2048,"%s:%s:%s",oldpath,p1,p2); - tmp=strdup(buf); - setenv("LD_LIBRARY_PATH",tmp,1); + tmp=strdup(buf); + setenv("LD_LIBRARY_PATH",tmp,1); - log_debug("Invoking w/ LD_LIBRARY_PATH=%s",getenv("LD_LIBRARY_PATH")); + log_debug("Invoking w/ LD_LIBRARY_PATH=%s",getenv("LD_LIBRARY_PATH")); + } /* execve needs a full path */ ret = readlink("/proc/self/exe",buf,sizeof(buf)-1); --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]