commit bc745b6e99888c97c7e8f6ff3b7e8f605cab5af1
parent 0b0c76626bbb6b674018ac63fe050d039131f618
Author: Dave Aitken <dave.aitken@gmail.com>
Date: Thu, 7 Jul 2011 02:51:13 -0700
Fixed resolve() double endslash defect
Diffstat:
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/plugin/NERD_tree.vim b/plugin/NERD_tree.vim
@@ -2297,7 +2297,7 @@ function! s:Path.readInfoFromDisk(fullpath)
let lastPathComponent = self.getLastPathComponent(0)
"get the path to the new node with the parent dir fully resolved
- let hardPath = resolve(self.strTrunk()) . '/' . lastPathComponent
+ let hardPath = resolve(self.strTrunk()) . lastPathComponent
"if the last part of the path is a symlink then flag it as such
let self.isSymLink = (resolve(hardPath) != hardPath)
@@ -2472,9 +2472,13 @@ function! s:Path._str()
endfunction
"FUNCTION: Path.strTrunk() {{{3
-"Gets the path without the last segment on the end.
+"Gets the path without the last segment on the end, always with an endslash
function! s:Path.strTrunk()
- return self.drive . '/' . join(self.pathSegments[0:-2], '/')
+ let toReturn = self.drive . '/' . join(self.pathSegments[0:-2], '/')
+ if toReturn !~# '\/$'
+ let toReturn .= '/'
+ endif
+ return toReturn
endfunction
"FUNCTION: Path.WinToUnixPath(pathstr){{{3
@@ -4122,4 +4126,4 @@ endfunction
"reset &cpo back to users setting
let &cpo = s:old_cpo
-" vim: set sw=4 sts=4 et fdm=marker:
-\ No newline at end of file
+" vim: set sw=4 sts=4 et fdm=marker: