diff options
| author | ruki <[email protected]> | 2026-08-15 00:04:39 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2026-08-15 00:04:39 +0800 |
| commit | ca9239022e1cba0faf054e8fe2f178a466149b04 (patch) | |
| tree | f646b0c7348435a970bcd28f1cd4dcea2e59dec7 /xmake/core/package/addon.lua | |
| parent | b13c11f9457e274eeb5e7c51547f619eb4aa6a68 (diff) | |
improve xrepo addon install
Diffstat (limited to 'xmake/core/package/addon.lua')
| -rw-r--r-- | xmake/core/package/addon.lua | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/xmake/core/package/addon.lua b/xmake/core/package/addon.lua index 33eb22e03..731c673ab 100644 --- a/xmake/core/package/addon.lua +++ b/xmake/core/package/addon.lua @@ -76,7 +76,7 @@ function addon._save(registry) addon._ADDONS = nil local registryfile = addon._registryfile() -- we need not create an empty registry file if no addons are installed - if next(registry) == nil and not os.isfile(registryfile) then + if table.empty(registry) and not os.isfile(registryfile) then return end local ok, errors = io.save(registryfile, registry) @@ -211,9 +211,10 @@ function addon._unregister(name, version) if version then entry.versions[version] = nil if entry.active == version then - entry.active = next(entry.versions) + -- we need to select the other one deterministically + entry.active = addon.versions(name)[1] end - if next(entry.versions) == nil then + if table.empty(entry.versions) then registry[dirname] = nil end else |
