diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/luarocks/fs/lua.lua | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/luarocks/fs/lua.lua b/src/luarocks/fs/lua.lua index 2619d136..96017daa 100644 --- a/src/luarocks/fs/lua.lua +++ b/src/luarocks/fs/lua.lua | |||
| @@ -123,7 +123,20 @@ function fs_lua.is_tool_available(tool_cmd, tool_name) | |||
| 123 | ok = tool_available_cache[tool_name] | 123 | ok = tool_available_cache[tool_name] |
| 124 | else | 124 | else |
| 125 | local tool_cmd_no_args = tool_cmd:gsub(" .*", "") | 125 | local tool_cmd_no_args = tool_cmd:gsub(" .*", "") |
| 126 | ok = fs.search_in_path(tool_cmd_no_args) | 126 | |
| 127 | -- if it looks like the tool has a pathname, try that first | ||
| 128 | if tool_cmd_no_args:match("[/\\]") then | ||
| 129 | local fd = io.open(tool_cmd_no_args, "r") | ||
| 130 | if fd then | ||
| 131 | fd:close() | ||
| 132 | ok = true | ||
| 133 | end | ||
| 134 | end | ||
| 135 | |||
| 136 | if not ok then | ||
| 137 | ok = fs.search_in_path(tool_cmd_no_args) | ||
| 138 | end | ||
| 139 | |||
| 127 | tool_available_cache[tool_name] = (ok == true) | 140 | tool_available_cache[tool_name] = (ok == true) |
| 128 | end | 141 | end |
| 129 | 142 | ||
