diff options
| -rw-r--r-- | xmake/core/base/interpreter.lua | 7 | ||||
| -rw-r--r-- | xmake/core/base/scopeinfo.lua | 7 |
2 files changed, 12 insertions, 2 deletions
diff --git a/xmake/core/base/interpreter.lua b/xmake/core/base/interpreter.lua index 854212cc9..831065c68 100644 --- a/xmake/core/base/interpreter.lua +++ b/xmake/core/base/interpreter.lua @@ -1043,7 +1043,12 @@ function interpreter:api_register_set_values(scope_kind, ...) end -- save values - scope[name] = values + if #values > 0 then + scope[name] = values + else + -- set("xx", nil)? remove it + scope[name] = nil + end -- save extra config if extra_config then diff --git a/xmake/core/base/scopeinfo.lua b/xmake/core/base/scopeinfo.lua index 350d2ef95..c278e89ce 100644 --- a/xmake/core/base/scopeinfo.lua +++ b/xmake/core/base/scopeinfo.lua @@ -115,7 +115,12 @@ function _instance:_api_set_values(name, ...) local handled_values = self:_api_handle(values) -- save values - scope[name] = handled_values + if #handled_values > 0 then + scope[name] = handled_values + else + -- set("xx", nil)? remove it + scope[name] = nil + end -- save extra config if extra_config then |
