From 084792b829657cdf516799e43f89c0b8c22f4ab8 Mon Sep 17 00:00:00 2001
From: xiao <xiao.h.fan@gmail.com>
Date: Mon, 3 Aug 2015 22:10:24 -0700
Subject: [PATCH] Don't clobber chpwd

---
 plugins/dirhistory/dirhistory.plugin.zsh             | 4 +++-
 plugins/last-working-dir/last-working-dir.plugin.zsh | 4 +++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/plugins/dirhistory/dirhistory.plugin.zsh b/plugins/dirhistory/dirhistory.plugin.zsh
index d101cfcae..a2faa9ee4 100644
--- a/plugins/dirhistory/dirhistory.plugin.zsh
+++ b/plugins/dirhistory/dirhistory.plugin.zsh
@@ -49,7 +49,9 @@ function push_future() {
 }
 
 # Called by zsh when directory changes
-function chpwd() {
+typeset -ga chpwd_functions
+chpwd_functions+='chpwd_dirhistory'
+function chpwd_dirhistory() {
   push_past $PWD
   # If DIRHISTORY_CD is not set...
   if [[ -z "${DIRHISTORY_CD+x}" ]]; then
diff --git a/plugins/last-working-dir/last-working-dir.plugin.zsh b/plugins/last-working-dir/last-working-dir.plugin.zsh
index 75041f08e..708ae4f74 100644
--- a/plugins/last-working-dir/last-working-dir.plugin.zsh
+++ b/plugins/last-working-dir/last-working-dir.plugin.zsh
@@ -8,7 +8,9 @@ mkdir -p $ZSH_CACHE_DIR
 cache_file="$ZSH_CACHE_DIR/last-working-dir"
 
 # Updates the last directory once directory is changed.
-function chpwd() {
+typeset -ga chpwd_functions
+chpwd_functions+='chpwd_last_working_dir'
+function chpwd_last_working_dir() {
   # Use >| in case noclobber is set to avoid "file exists" error
 	pwd >| "$cache_file"
 }
-- 
2.21.0