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

jvergara
19.42.2008 2eb6cc2512cb55d1c5ea2292f6375ffade755e2f
Fix for issue 2969 (In some cases the arguments set for offline operations (import-ldif, export-ldif) are the ones of the online mode)

The problem comes because when we are dealing with scripts that can have both online and off-line modes we call _script-util to know whether we must run the script in online or off-line modes. This makes the environments variables to be set, so when we call the second time _script-util (to set the environment for the off-line mode) nothing is changed if the user specified not to overwrite the environment variables.

The fix consists on resetting the environment variables to its original state before calling _script-util for the second time.
2 files modified
25 ■■■■■ changed files
opendj-sdk/opends/resource/bin/_mixed-script.bat 12 ●●●●● patch | view | raw | blame | history
opendj-sdk/opends/resource/bin/_mixed-script.sh 13 ●●●●● patch | view | raw | blame | history
opendj-sdk/opends/resource/bin/_mixed-script.bat
@@ -37,6 +37,11 @@
set OLD_SCRIPT_NAME=%SCRIPT_NAME%
set SCRIPT_NAME=%OLD_SCRIPT_NAME%.online
rem We keep this values to reset the environment before calling _script-util.bat.
set ORIGINAL_JAVA_ARGS=%OPENDS_JAVA_ARGS%
set ORIGINAL_JAVA_HOME=%OPENDS_JAVA_HOME%
set ORIGINAL_JAVA_BIN=%OPENDS_JAVA_BIN%
set SCRIPT_UTIL_CMD=set-full-environment
call "%INSTANCE_ROOT%\lib\_script-util.bat"
if NOT %errorlevel% == 0 exit /B %errorlevel%
@@ -63,6 +68,13 @@
:launchoffline
set SCRIPT_NAME=%OLD_SCRIPT_NAME%.offline
rem Set the original values that the user had on the environment in order to be
rem sure that the script works with the proper arguments (in particular
rem if the user specified not to overwrite the environment).
set OPENDS_JAVA_ARGS=%ORIGINAL_JAVA_ARGS%
set OPENDS_JAVA_HOME=%ORIGINAL_JAVA_HOME%
set OPENDS_JAVA_BIN=%ORIGINAL_JAVA_BIN%
set SCRIPT_UTIL_CMD=set-full-environment
call "%INSTANCE_ROOT%\lib\_script-util.bat"
if NOT %errorlevel% == 0 exit /B %errorlevel%
opendj-sdk/opends/resource/bin/_mixed-script.sh
@@ -54,6 +54,12 @@
SCRIPT_NAME=${OLD_SCRIPT_NAME}.online
export SCRIPT_NAME
# We keep this values to reset the environment before calling _script-util.sh
# for the second time.
ORIGINAL_JAVA_ARGS=${OPENDS_JAVA_ARGS}
ORIGINAL_JAVA_HOME=${OPENDS_JAVA_HOME}
ORIGINAL_JAVA_BIN=${OPENDS_JAVA_BIN}
# Set environment variables
SCRIPT_UTIL_CMD=set-full-environment
export SCRIPT_UTIL_CMD
@@ -76,6 +82,13 @@
EC=${?}
if test ${EC} -eq 51
then
  # Set the original values that the user had on the environment in order to be
  # sure that the script works with the proper arguments (in particular
  # if the user specified not to overwrite the environment).
  OPENDS_JAVA_ARGS=${ORIGINAL_JAVA_ARGS}
  OPENDS_JAVA_HOME=${ORIGINAL_JAVA_HOME}
  OPENDS_JAVA_BIN=${ORIGINAL_JAVA_BIN}
  # Set the environment to use the offline properties
  SCRIPT_NAME=${OLD_SCRIPT_NAME}.offline
  export SCRIPT_NAME