fix: dont create data dir if it's a broken symlink

Checking if it's non-empty and not a directory gets us quite far, but
not all the way. While a working symlink would trigger the earlier
checks, a broken symlink does not.

This commit fixes the special case where ~/.local/share/nvim  already
exists but is a broken symlink. Thus, it fixes the following error on
startup:

E739: Cannot create directory /home/samuel/.local/share/nvim: file
already exists
This commit is contained in:
Samuel (ThinLinc team)
2023-10-20 11:10:18 +02:00
committed by Samuel Mannehed
parent 594ff34581
commit a6051e68a3

View File

@@ -14,7 +14,9 @@ function! s:GetManifestPath() abort
let dest = stdpath('data')
if !empty(dest)
if !isdirectory(dest)
call mkdir(dest, 'p', 0700)
if getftype(dest) != "link"
call mkdir(dest, 'p', 0700)
endif
endif
let manifest_base = dest
endif