mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Ludovic Poitou
07.09.2013 23dae5f81d0349d492a2e808f3ca8a8c82bcb6e1
Fix issue OPENDJ-732: Both start-ds and set-java-home were missing quotes around variables, and failed if the Java path contains spaces (like with QuickSetup on Mac OSX, which uses the Plugin JRE).
2 files modified
28 ■■■■ changed files
opends/resource/bin/start-ds 6 ●●●● patch | view | raw | blame | history
opends/src/server/org/opends/server/tools/JavaPropertiesTool.java 22 ●●●● patch | view | raw | blame | history
opends/resource/bin/start-ds
@@ -24,7 +24,7 @@
#
#
#      Copyright 2006-2009 Sun Microsystems, Inc.
#      Portions Copyright 2011 ForgeRock AS
#      Portions Copyright 2011-2013 ForgeRock AS
# Capture the current working directory so that we can change to it later.
@@ -92,7 +92,7 @@
# means that the server is already running and we shouldn't try to start it.
# An exit code of anything else means that we're not trying to start the server
# and we can just exit with that exit code.
${OPENDJ_JAVA_BIN} -client ${SCRIPT_NAME_ARG} org.opends.server.core.DirectoryServer \
"${OPENDJ_JAVA_BIN}" -client ${SCRIPT_NAME_ARG} org.opends.server.core.DirectoryServer \
            --configClass org.opends.server.extensions.ConfigFileHandler \
            --configFile "${CONFIG_FILE}" --checkStartability "${@}"
EC=${?}
@@ -119,7 +119,7 @@
  if test ${EC} -eq 0
  then
    # An exit code of 98 means that the server is already running.
    ${OPENDJ_JAVA_BIN} -client ${SCRIPT_NAME_ARG} org.opends.server.core.DirectoryServer \
    "${OPENDJ_JAVA_BIN}" -client ${SCRIPT_NAME_ARG} org.opends.server.core.DirectoryServer \
            --configClass org.opends.server.extensions.ConfigFileHandler \
            --configFile "${CONFIG_FILE}" --checkStartability > /dev/null 2>&1
    EC=${?}
opends/src/server/org/opends/server/tools/JavaPropertiesTool.java
@@ -23,7 +23,7 @@
 *
 *
 *      Copyright 2008-2009 Sun Microsystems, Inc.
 *      Portions Copyright 2011-2012 ForgeRock AS
 *      Portions Copyright 2011-2013 ForgeRock AS
 */
package org.opends.server.tools;
@@ -107,7 +107,7 @@
    {
      return returnCode;
    }
  };
  }
  final private static String DEFAULT_JAVA_HOME_PROP_NAME = "default.java-home";
  final private static String DEFAULT_JAVA_ARGS_PROP_NAME = "default.java-args";
@@ -246,7 +246,7 @@
    }
    Properties properties = new Properties();
    BufferedReader reader = null;
    BufferedReader reader;
    String propertiesFile = argParser.propertiesFileArg.getValue();
    try
    {
@@ -269,7 +269,7 @@
    String destinationFile = argParser.destinationFileArg.getValue();
    BufferedWriter writer = null;
    BufferedWriter writer;
    try
    {
      File f = new File(destinationFile);
@@ -565,7 +565,7 @@
          buf.append(
          s+"then"+EOL+
          s+"  TEMP=\""+value+"/bin/java\""+EOL+
          s+"  if test -f ${TEMP}"+EOL+
          s+"  if test -f \"${TEMP}\""+EOL+
          s+"  then"+EOL+
          s+"    OPENDJ_JAVA_BIN=\""+value+"/bin/java\""+EOL+
          s+"    export OPENDJ_JAVA_BIN"+EOL+
@@ -599,9 +599,9 @@
          buf.append(
              "  then"+EOL+
              "    TEMP=\""+defaultJavaHome+"/bin/java\""+EOL+
              "    if test -f ${TEMP}"+EOL+
              "    if test -f \"${TEMP}\""+EOL+
              "    then"+EOL+
              "      OPENDJ_JAVA_BIN=${TEMP}"+EOL+
              "      OPENDJ_JAVA_BIN=\"${TEMP}\""+EOL+
              "      export OPENDJ_JAVA_BIN"+EOL+
              "    fi"+EOL);
        }
@@ -638,19 +638,19 @@
        // No properties added: this is required not to break the script
        buf.append(
            "  then"+EOL+
            "  OPENDJ_JAVA_BIN=${OPENDJ_JAVA_BIN}"+EOL);
            "  OPENDJ_JAVA_BIN=\"${OPENDJ_JAVA_BIN}\""+EOL);
      }
      buf.append(
          "      else"+EOL+
          "        OPENDJ_JAVA_BIN=${OPENDJ_JAVA_HOME}/bin/java"+EOL+
          "        OPENDJ_JAVA_BIN=\"${OPENDJ_JAVA_HOME}/bin/java\""+EOL+
          "        export OPENDJ_JAVA_BIN"+EOL+
          "      fi"+EOL+
          "    else"+EOL+
          "      OPENDJ_JAVA_BIN=${OPENDS_JAVA_BIN}"+EOL+
          "      OPENDJ_JAVA_BIN=\"${OPENDS_JAVA_BIN}\""+EOL+
          "      export OPENDJ_JAVA_BIN"+EOL+
          "    fi"+EOL+
          "  else"+EOL+
          "    OPENDJ_JAVA_BIN=${OPENDS_JAVA_HOME}/bin/java"+EOL+
          "    OPENDJ_JAVA_BIN=\"${OPENDS_JAVA_HOME}/bin/java\""+EOL+
          "    export OPENDJ_JAVA_BIN"+EOL+
          "  fi"+EOL+