89f05c90ca
The data table is used to map objects (clients/tags) to the buttons associated with them. This is done so that we don't have to re-create the button objects each time this lists are updated. The problem was that this weak-keyed table was never cleared, because the value had a strong reference to the key (via the button's signal): btn:connect_signal("press", function () b:emit_signal("press", o) end) "o" is the key in the table and btn is reachable from the value. This prevented the garbage collection of the key. Using a weak-keyed and weak-valued table fixes this. Signed-off-by: Uli Schlachter <psychon@znc.in> |
||
---|---|---|
.. | ||
awful | ||
gears | ||
beautiful.lua.in | ||
naughty.lua.in |