diff options
Diffstat (limited to 'Completion')
-rw-r--r-- | Completion/Unix/Type/_path_files | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/Completion/Unix/Type/_path_files b/Completion/Unix/Type/_path_files index 041a73ba6..9fa6ae9fc 100644 --- a/Completion/Unix/Type/_path_files +++ b/Completion/Unix/Type/_path_files @@ -380,6 +380,7 @@ for prepath in "$prepaths[@]"; do # to ask why). tmp1=${match[1]} tpre=${match[2]} + tmp2=$tmp1 tmp1=${tmp1//(#b)\\(?)/$match[1]} tpre=${tpre//(#b)\\([^\\\]\[\^\~\(\)\#\*\?])/$match[1]} # Theory: donepath needs the quoting of special characters @@ -388,7 +389,7 @@ for prepath in "$prepaths[@]"; do # doing something a bit different. tmp3=${donepath//(#b)\\(?)/$match[1]} while true; do - if [[ -z $path_completion || -d $prepath$realpath$tmp3$tmp1 ]]; then + if [[ -z $path_completion || -d $prepath$realpath$tmp3$tmp2 ]]; then tmp3=$tmp3$tmp1/ # Now put donepath back the way it should be. (I think.) donepath=${tmp3//(#b)([\\\]\[\^\~\(\)\#\*\?])/\\$match[1]} |