@@ -1400,10 +1400,11 @@ call s:add_methods('buffer', ['repo', 'type'])
14001400
14011401function ! s: FilterEscape (items , ... ) abort
14021402 let items = copy (a: items )
1403+ call map (items , ' s:fnameescape(v:val)' )
14031404 if a: 0 && type (a: 1 ) == type (' ' )
14041405 call filter (items , ' strpart(v:val, 0, strlen(a:1)) ==# a:1' )
14051406 endif
1406- return map ( items , ' s:fnameescape(v:val) ' )
1407+ return items
14071408endfunction
14081409
14091410function ! s: GlobComplete (lead, pattern) abort
@@ -1469,16 +1470,15 @@ function! fugitive#CompleteObject(base, ...) abort
14691470 let results = []
14701471 if a: base = ~# ' ^refs/'
14711472 let results += map (s: GlobComplete (fugitive#CommonDir (dir ) . ' /' , a: base . ' *' ), ' s:Slash(v:val)' )
1473+ call map (results, ' s:fnameescape(v:val)' )
14721474 elseif a: base !~# ' ^\.\=/\|^:('
14731475 let heads = s: CompleteHeads (dir )
14741476 if filereadable (fugitive#Find (' .git/refs/stash' , dir ))
14751477 let heads += [" stash" ]
14761478 let heads += sort (s: LinesError ([" stash" ," list" ," --pretty=format:%gd" ], dir )[0 ])
14771479 endif
1478- call filter (heads,' v:val[ 0 : strlen(a:base)-1 ] ==# a:base' )
1479- let results += heads
1480+ let results += s: FilterEscape (heads, a: base )
14801481 endif
1481- call map (results, ' s:fnameescape(v:val)' )
14821482 if ! empty (tree)
14831483 let results += a: 0 == 1 ? fugitive#CompletePath (a: base , dir ) : fugitive#CompletePath (a: base )
14841484 endif
0 commit comments