From ca9239022e1cba0faf054e8fe2f178a466149b04 Mon Sep 17 00:00:00 2001 From: ruki Date: Sat, 15 Aug 2026 00:04:39 +0800 Subject: improve xrepo addon install --- xmake/core/package/addon.lua | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'xmake/core/package/addon.lua') 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 -- cgit v1.3.1