summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAylur <[email protected]>2024-09-28 11:21:55 +0000
committerAylur <[email protected]>2024-09-28 11:21:55 +0000
commitd9cdac25f78f4c9aaf0b12461a0d737dc392e746 (patch)
tree2a80e0ec9a9850994a56aad56252d097f08259b9
parent5e6246ee778079f92ecfbf87e96176bf1a7a0085 (diff)
fix #24 correctly insert nil vaues into transform params
-rw-r--r--core/lua/astal/variable.lua10
1 files changed, 5 insertions, 5 deletions
diff --git a/core/lua/astal/variable.lua b/core/lua/astal/variable.lua
index 377b448..df83e5f 100644
--- a/core/lua/astal/variable.lua
+++ b/core/lua/astal/variable.lua
@@ -248,8 +248,8 @@ function Variable.derive(deps, transform)
local update = function()
local params = {}
- for _, binding in ipairs(deps) do
- table.insert(params, binding:get())
+ for i, binding in ipairs(deps) do
+ params[i] = binding:get()
end
return transform(table.unpack(params))
end
@@ -257,13 +257,13 @@ function Variable.derive(deps, transform)
local var = Variable.new(update())
local unsubs = {}
- for _, b in ipairs(deps) do
- table.insert(unsubs, b:subscribe(update))
+ for i, b in ipairs(deps) do
+ unsubs[i] = b:subscribe(update)
end
var.variable.on_dropped = function()
for _, unsub in ipairs(unsubs) do
- var:set(unsub())
+ unsub()
end
end
return var