From 845af58f795809f1c677f93236cc014d8b705e4b Mon Sep 17 00:00:00 2001 From: sansone931 Date: Wed, 7 Jul 2021 01:00:41 -0300 Subject: [PATCH] Fix error caused by broken symlinks When a symbolic link points to an invalid path, the value of `link_to` equals `nil`. This value makes `utils.path_relative` throw an error, since it expects a string as the first argument --- lua/nvim-tree/populate.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lua/nvim-tree/populate.lua b/lua/nvim-tree/populate.lua index f42a5ba6966..a7b37631bb8 100644 --- a/lua/nvim-tree/populate.lua +++ b/lua/nvim-tree/populate.lua @@ -65,7 +65,7 @@ local function link_new(cwd, name) local absolute_path = utils.path_join({ cwd, name }) local link_to = luv.fs_realpath(absolute_path) -- if links to a file outside cwd, relative_path equals absolute_path - local relative_path = utils.path_relative(link_to, luv.cwd()) + local relative_path = link_to ~= nil and utils.path_relative(link_to, luv.cwd()) or nil local stat = luv.fs_stat(absolute_path) local open, entries if (link_to ~= nil) and luv.fs_stat(link_to).type == 'directory' then