summaryrefslogtreecommitdiff
path: root/plugins/last-working-dir
diff options
context:
space:
mode:
authorJacob Tomaw <jacob.tomaw@gmail.com>2019-11-19 12:47:12 -0500
committerMarc Cornellà <marc.cornella@live.com>2019-11-19 18:47:12 +0100
commit1ba0af650ac575a7d35b10146d2e7a7b3b2e2ae6 (patch)
tree43f201ed985a63230fae98a20c84118278eb3fc1 /plugins/last-working-dir
parentd4f32e9f3a6471ce689aa8fb5a9f04e8565bcff6 (diff)
downloadzsh-1ba0af650ac575a7d35b10146d2e7a7b3b2e2ae6.tar.gz
zsh-1ba0af650ac575a7d35b10146d2e7a7b3b2e2ae6.tar.bz2
zsh-1ba0af650ac575a7d35b10146d2e7a7b3b2e2ae6.zip
Use safer append to hook function arrays (#8406)
Use add-zsh-hook to add functions to hooks. That way they won't be added again when doing `source ~/.zshrc` multiple times. Co-authored-by: Marc Cornellà <marc.cornella@live.com>
Diffstat (limited to 'plugins/last-working-dir')
-rw-r--r--plugins/last-working-dir/last-working-dir.plugin.zsh3
1 files changed, 2 insertions, 1 deletions
diff --git a/plugins/last-working-dir/last-working-dir.plugin.zsh b/plugins/last-working-dir/last-working-dir.plugin.zsh
index 53bb19e46..fd21705ae 100644
--- a/plugins/last-working-dir/last-working-dir.plugin.zsh
+++ b/plugins/last-working-dir/last-working-dir.plugin.zsh
@@ -2,7 +2,8 @@
typeset -g ZSH_LAST_WORKING_DIRECTORY
# Updates the last directory once directory is changed
-chpwd_functions+=(chpwd_last_working_dir)
+autoload -U add-zsh-hook
+add-zsh-hook chpwd chpwd_last_working_dir
chpwd_last_working_dir() {
if [ "$ZSH_SUBSHELL" = 0 ]; then
local cache_file="$ZSH_CACHE_DIR/last-working-dir"