From 59dbab4f1c0898f9a354d85051b1d5a5e776d984 Mon Sep 17 00:00:00 2001 From: "Barton E. Schaefer" Date: Mon, 31 Oct 2016 12:14:23 -0700 Subject: 39792: improve handling of relative paths in _canonical_paths_add_paths --- ChangeLog | 5 +++++ Completion/Unix/Type/_canonical_paths | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 9dd63251e..2676d0a17 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2016-10-31 Barton E. Schaefer + + * 39792: Completion/Unix/Type/_canonical_paths: improve handling + of relative paths in _canonical_paths_add_paths + 2016-10-31 Daniel Shahaf * 39786: Functions/VCS_Info/Backends/VCS_INFO_get_data_hg, diff --git a/Completion/Unix/Type/_canonical_paths b/Completion/Unix/Type/_canonical_paths index 9bccc7f86..6482602ac 100644 --- a/Completion/Unix/Type/_canonical_paths +++ b/Completion/Unix/Type/_canonical_paths @@ -69,7 +69,10 @@ _canonical_paths_add_paths () { expref=${~origpref} 2>/dev/null [[ $origpref == (|*/). ]] && rltrim=. curpref=${${expref%$rltrim}:-./} - if zstat $curpref >&/dev/null; then + if [[ $expref:h == (.|..) ]]; then + _canonical_paths_pwd $expref:h + canpref=$REPLY/$expref:t + elif zstat $curpref >&/dev/null; then _canonical_paths_get_canonical_path $curpref canpref=$REPLY else -- cgit 1.4.1