summaryrefslogtreecommitdiff
path: root/plugins/poetry-env
diff options
context:
space:
mode:
authorAlex Rosenfeld <alexrosenfeld10@gmail.com>2024-10-08 15:44:18 -0400
committerGitHub <noreply@github.com>2024-10-08 21:44:18 +0200
commit0987eee19034e36dda27887775fccfe7b8c0157e (patch)
tree07cb9cfbc936c1dec6ba4968e61dac59706a7b17 /plugins/poetry-env
parent2a109d30afe4ab164a946c307abc3d2a444a42ad (diff)
downloadzsh-0987eee19034e36dda27887775fccfe7b8c0157e.tar.gz
zsh-0987eee19034e36dda27887775fccfe7b8c0157e.tar.bz2
zsh-0987eee19034e36dda27887775fccfe7b8c0157e.zip
fix(poetry-env): only run `deactivate` if needed (#12701)
Co-authored-by: Carlo Sala <carlosalag@protonmail.com>
Diffstat (limited to 'plugins/poetry-env')
-rw-r--r--plugins/poetry-env/poetry-env.plugin.zsh5
1 files changed, 3 insertions, 2 deletions
diff --git a/plugins/poetry-env/poetry-env.plugin.zsh b/plugins/poetry-env/poetry-env.plugin.zsh
index be46717d8..dd52b1655 100644
--- a/plugins/poetry-env/poetry-env.plugin.zsh
+++ b/plugins/poetry-env/poetry-env.plugin.zsh
@@ -6,10 +6,11 @@ _togglePoetryShell() {
fi
# Deactivate the current environment if moving out of a Poetry directory or into a different Poetry directory
- if [[ $poetry_active -eq 1 ]] && { [[ $in_poetry_dir -eq 0 ]] && [[ "$PWD" != "$poetry_dir"* ]]; }; then
+ if [[ $poetry_active -eq 1 ]] && [[ $in_poetry_dir -eq 0 ]] \
+ && [[ "$PWD" != "$poetry_dir"* ]]; then
export poetry_active=0
unset poetry_dir
- deactivate
+ (( $+functions[deactivate] )) && deactivate
fi
# Activate the environment if in a Poetry directory and no environment is currently active