diff --git a/libexec/pyenv-prefix b/libexec/pyenv-prefix index a25ff030..9b73795e 100755 --- a/libexec/pyenv-prefix +++ b/libexec/pyenv-prefix @@ -30,7 +30,7 @@ OLDIFS="$IFS" { IFS=: for version in ${PYENV_VERSION}; do if [ "$version" = "system" ]; then - if PYTHON_PATH="$(pyenv-which python 2>/dev/null)"; then + if PYTHON_PATH="$(PYENV_VERSION="${version}" pyenv-which python 2>/dev/null)"; then PYENV_PREFIX_PATH="${PYTHON_PATH%/bin/*}" else echo "pyenv: system version not found in PATH" >&2 diff --git a/test/pyenv_ext.bats b/test/pyenv_ext.bats index fdc7da46..cc138cbe 100644 --- a/test/pyenv_ext.bats +++ b/test/pyenv_ext.bats @@ -1,3 +1,14 @@ #!/usr/bin/env bats load test_helper + +@test "prefixes" { + mkdir -p "${PYENV_TEST_DIR}/bin" + touch "${PYENV_TEST_DIR}/bin/python" + chmod +x "${PYENV_TEST_DIR}/bin/python" + mkdir -p "${PYENV_ROOT}/versions/2.7.10" + PYENV_VERSION="system:2.7.10" run pyenv-prefix + assert_success "${PYENV_TEST_DIR}:${PYENV_ROOT}/versions/2.7.10" + PYENV_VERSION="2.7.10:system" run pyenv-prefix + assert_success "${PYENV_ROOT}/versions/2.7.10:${PYENV_TEST_DIR}" +}