summaryrefslogtreecommitdiff
path: root/plugins/last-working-dir/last-working-dir.plugin.zsh
diff options
context:
space:
mode:
authorXiao Fan <xiao.h.fan@gmail.com>2018-05-11 07:28:02 -0700
committerMarc Cornellà <marc.cornella@live.com>2018-05-11 16:28:02 +0200
commit18effd77db1156c11848bd3bfadd8fa63c747516 (patch)
tree169100ff664406729ad66fb5b464cb60dc77e838 /plugins/last-working-dir/last-working-dir.plugin.zsh
parente8c328cb394e39f8d1c7d18b85b0be12bd71c556 (diff)
downloadzsh-18effd77db1156c11848bd3bfadd8fa63c747516.tar.gz
zsh-18effd77db1156c11848bd3bfadd8fa63c747516.tar.bz2
zsh-18effd77db1156c11848bd3bfadd8fa63c747516.zip
last-working-dir: disable chpwd_last_working_dir in subshells (#6817)
Diffstat (limited to 'plugins/last-working-dir/last-working-dir.plugin.zsh')
-rw-r--r--plugins/last-working-dir/last-working-dir.plugin.zsh6
1 files changed, 4 insertions, 2 deletions
diff --git a/plugins/last-working-dir/last-working-dir.plugin.zsh b/plugins/last-working-dir/last-working-dir.plugin.zsh
index e882b288f..53bb19e46 100644
--- a/plugins/last-working-dir/last-working-dir.plugin.zsh
+++ b/plugins/last-working-dir/last-working-dir.plugin.zsh
@@ -4,8 +4,10 @@ typeset -g ZSH_LAST_WORKING_DIRECTORY
# Updates the last directory once directory is changed
chpwd_functions+=(chpwd_last_working_dir)
chpwd_last_working_dir() {
- local cache_file="$ZSH_CACHE_DIR/last-working-dir"
- pwd >| "$cache_file"
+ if [ "$ZSH_SUBSHELL" = 0 ]; then
+ local cache_file="$ZSH_CACHE_DIR/last-working-dir"
+ pwd >| "$cache_file"
+ fi
}
# Changes directory to the last working directory