diff --git a/share/functions/fish_print_hg_root.fish b/share/functions/fish_print_hg_root.fish index 65625f9ea..50df1e3c6 100644 --- a/share/functions/fish_print_hg_root.fish +++ b/share/functions/fish_print_hg_root.fish @@ -7,16 +7,16 @@ function fish_print_hg_root # Find an hg directory above $PWD # without calling `hg root` because that's too slow set -l root - set -l dir (pwd -P 2>/dev/null) + set -l dir "$(pwd -P 2>/dev/null)" or return 1 - while test $dir != / + while not contains -- "$dir" "" / . if test -f $dir'/.hg/dirstate' echo $dir/.hg return 0 end # Go up one directory - set dir (string replace -r '[^/]*/?$' '' $dir) + set dir (path dirname -- $dir) end return 1