aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim/loader.lua
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2024-09-23 06:05:58 -0700
committerGitHub <noreply@github.com>2024-09-23 06:05:58 -0700
commit47e6b2233feffc6e9d94f6086fb904eb5688fa25 (patch)
treef3c3e062ecd7aafef95ac0c77d038eb143aab074 /runtime/lua/vim/loader.lua
parent5acdc4499e2036c90172b2b085f207ee4d5cfee4 (diff)
downloadrneovim-47e6b2233feffc6e9d94f6086fb904eb5688fa25.tar.gz
rneovim-47e6b2233feffc6e9d94f6086fb904eb5688fa25.tar.bz2
rneovim-47e6b2233feffc6e9d94f6086fb904eb5688fa25.zip
fix(vim.fs): dirname() returns "." on mingw/msys2 #30480
Problem: `vim.fs.dirname([[C:\User\XXX\AppData\Local]])` returns "." on mingw/msys2. Solution: - Check for "mingw" when deciding `iswin`. - Use `has("win32")` where possible, it works in "fast" contexts since b02eeb6a7281df0561a021d7ae595c84be9a01be.
Diffstat (limited to 'runtime/lua/vim/loader.lua')
-rw-r--r--runtime/lua/vim/loader.lua3
1 files changed, 1 insertions, 2 deletions
diff --git a/runtime/lua/vim/loader.lua b/runtime/lua/vim/loader.lua
index 2a881d1602..0211e8d4a1 100644
--- a/runtime/lua/vim/loader.lua
+++ b/runtime/lua/vim/loader.lua
@@ -208,8 +208,7 @@ end
---@return string|function
---@private
function Loader.loader_lib(modname)
- local sysname = uv.os_uname().sysname:lower() or ''
- local is_win = sysname:find('win', 1, true) and not sysname:find('darwin', 1, true)
+ local is_win = vim.fn.has('win32') == 1
local ret = M.find(modname, { patterns = is_win and { '.dll' } or { '.so' } })[1]
if ret then
-- Making function name in Lua 5.1 (see src/loadlib.c:mkfuncname) is