diff options
| author | Daniil Fedotov <hairyhum@gmail.com> | 2018-08-13 11:43:54 +0100 |
|---|---|---|
| committer | Daniil Fedotov <hairyhum@gmail.com> | 2018-08-14 14:19:41 +0100 |
| commit | b8606a2ee50b643bdad7bf505aba7b8e5e3133c8 (patch) | |
| tree | f0de61eaea5471cd12ee7b4f7347f3a6cdfcb3cf /scripts | |
| parent | d296e80b521c1f0ae39cea0440104046884d58b0 (diff) | |
| download | rabbitmq-server-git-b8606a2ee50b643bdad7bf505aba7b8e5e3133c8.tar.gz | |
Fix function removing extension.
The ${FOO%.*} expression removes everything after the last dot,
which returns wrong results for paths like /foo/bar.baz/bar.
Make it use basename and dirname intead.
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/rabbitmq-server | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/scripts/rabbitmq-server b/scripts/rabbitmq-server index 163bcdf18f..78faf063b7 100755 --- a/scripts/rabbitmq-server +++ b/scripts/rabbitmq-server @@ -74,9 +74,19 @@ if [ ! -f "${RABBITMQ_SCHEMA_DIR}/rabbit.schema" ]; then cp "${RABBITMQ_HOME}/priv/schema/rabbit.schema" "${RABBITMQ_SCHEMA_DIR}" fi +get_noex() { + if [ "x" = "x${1}" ]; then + echo "" + else + local BASENAME=$(basename $1) + local DIRNAME=$(dirname $1) + echo "${DIRNAME}/${BASENAME%.*}" + fi +} + # Check that advanced config file has the .config extension # Add .config extension if it's empty -RABBITMQ_ADVANCED_CONFIG_FILE_NOEX="${RABBITMQ_ADVANCED_CONFIG_FILE%.*}" +RABBITMQ_ADVANCED_CONFIG_FILE_NOEX=$(get_noex ${RABBITMQ_ADVANCED_CONFIG_FILE}) if [ "${RABBITMQ_ADVANCED_CONFIG_FILE_NOEX}.config" = "${RABBITMQ_ADVANCED_CONFIG_FILE}" \ -o "${RABBITMQ_ADVANCED_CONFIG_FILE_NOEX}" = "${RABBITMQ_ADVANCED_CONFIG_FILE}" ]; then RABBITMQ_ADVANCED_CONFIG_FILE="${RABBITMQ_ADVANCED_CONFIG_FILE_NOEX}.config" @@ -87,7 +97,7 @@ else fi -RABBITMQ_CONFIG_FILE_NOEX="${RABBITMQ_CONFIG_FILE%.*}" +RABBITMQ_CONFIG_FILE_NOEX=$(get_noex ${RABBITMQ_CONFIG_FILE}) # Extension is not specified. # Determine config type from file @@ -133,7 +143,7 @@ fi # Set -config if the file exists if [ -f "${RABBITMQ_CONFIG_ARG_FILE}" ]; then - RABBITMQ_CONFIG_ARG_FILE_NOEX="${RABBITMQ_CONFIG_ARG_FILE%.*}" + RABBITMQ_CONFIG_ARG_FILE_NOEX=$(get_noex ${RABBITMQ_CONFIG_ARG_FILE}) RABBITMQ_CONFIG_ARG="-config ${RABBITMQ_CONFIG_ARG_FILE_NOEX}" fi |
