From 21c0c05130d9bdd275f29ccb158fa7103493903a Mon Sep 17 00:00:00 2001 From: Matteo De Wint Date: Mon, 16 Nov 2020 10:47:30 +0100 Subject: [PATCH] [Fix] `nvm_die_on_prefix`: only grep lines starting with env var name --- nvm.sh | 2 +- test/fast/Unit tests/nvm_die_on_prefix | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/nvm.sh b/nvm.sh index 13dcb01..9bc89ad 100644 --- a/nvm.sh +++ b/nvm.sh @@ -2224,7 +2224,7 @@ nvm_die_on_prefix() { # here, we avoid trying to replicate "which one wins" or testing the value; if any are defined, it errors # until none are left. local NVM_NPM_CONFIG_PREFIX_ENV - NVM_NPM_CONFIG_PREFIX_ENV="$(command env | nvm_grep -i NPM_CONFIG_PREFIX | command tail -1 | command awk -F '=' '{print $1}')" + NVM_NPM_CONFIG_PREFIX_ENV="$(command env | nvm_grep -i ^NPM_CONFIG_PREFIX | command tail -1 | command awk -F '=' '{print $1}')" if [ -n "${NVM_NPM_CONFIG_PREFIX_ENV-}" ]; then local NVM_CONFIG_VALUE eval "NVM_CONFIG_VALUE=\"\$${NVM_NPM_CONFIG_PREFIX_ENV}\"" diff --git a/test/fast/Unit tests/nvm_die_on_prefix b/test/fast/Unit tests/nvm_die_on_prefix index f06a9bf..54c15f7 100755 --- a/test/fast/Unit tests/nvm_die_on_prefix +++ b/test/fast/Unit tests/nvm_die_on_prefix @@ -84,6 +84,9 @@ EXIT_CODE="$(export npm_CONFIG_PREFIX=bar ; nvm_die_on_prefix 0 foo "$(nvm_versi [ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "'npm_CONFIG_PREFIX=bar nvm_die_on_prefix 0 foo' did not error with '$EXPECTED_OUTPUT'; got '$OUTPUT'" [ "_$EXIT_CODE" = "_4" ] || die "'npm_CONFIG_PREFIX=bar nvm_die_on_prefix 0 foo' did not exit with 4; got '$EXIT_CODE'" +OUTPUT="$(export FOO='NPM_CONFIG_PREFIX' ; nvm_die_on_prefix 0 foo "$(nvm_version_dir new)" 2>&1)" +[ -z "$OUTPUT" ] || die "'nvm_die_on_prefix' was not a noop; got '$OUTPUT'" + # npmrc tests ( cd "${TEST_DIR}"