summaryrefslogtreecommitdiff
path: root/xmake/core/package/package.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2025-01-12 21:27:13 +0800
committerruki <[email protected]>2025-01-12 21:27:13 +0800
commit543fa337184df181eae18b35eb8f80c125ab8a84 (patch)
treedf9a70fea3cec29276a389fda86983c761ad16ac /xmake/core/package/package.lua
parent5bc5ce579fe5af900fc5dd653dfde7be486ea9a1 (diff)
fix errors for apis
Diffstat (limited to 'xmake/core/package/package.lua')
-rw-r--r--xmake/core/package/package.lua32
1 files changed, 17 insertions, 15 deletions
diff --git a/xmake/core/package/package.lua b/xmake/core/package/package.lua
index ea33e24fa..f7b49db38 100644
--- a/xmake/core/package/package.lua
+++ b/xmake/core/package/package.lua
@@ -55,23 +55,25 @@ local sandbox_module = require("sandbox/modules/import/core/sandbox/module")
-- new an instance
function _instance.new(name, info, opt)
opt = opt or {}
- local parts = name:split("::", {plain = true})
local instance = table.inherit(_instance)
- local managers = package._memcache():get("managers")
- if managers == nil and #parts == 2 then
- managers = hashset.new()
- for _, dir in ipairs(os.dirs(path.join(os.programdir(), "modules/package/manager/*"))) do
- managers:insert(path.filename(dir))
+ if name then
+ local parts = name:split("::", {plain = true})
+ local managers = package._memcache():get("managers")
+ if managers == nil and #parts == 2 then
+ managers = hashset.new()
+ for _, dir in ipairs(os.dirs(path.join(os.programdir(), "modules/package/manager/*"))) do
+ managers:insert(path.filename(dir))
+ end
+ package._memcache():set("managers", managers)
end
- package._memcache():set("managers", managers)
- end
- if #parts == 2 and managers and managers:has(parts[1]) then
- instance._NAME = name
- else
- instance._NAME = parts[#parts]
- table.remove(parts)
- if #parts > 0 then
- instance._NAMESPACE = table.concat(parts, "::")
+ if #parts == 2 and managers and managers:has(parts[1]) then
+ instance._NAME = name
+ else
+ instance._NAME = parts[#parts]
+ table.remove(parts)
+ if #parts > 0 then
+ instance._NAMESPACE = table.concat(parts, "::")
+ end
end
end
instance._INFO = info