diff --git a/lib/awful/widget/taglist.lua.in b/lib/awful/widget/taglist.lua.in index f8192d78..b63421e9 100644 --- a/lib/awful/widget/taglist.lua.in +++ b/lib/awful/widget/taglist.lua.in @@ -77,11 +77,6 @@ function new(screen, label, buttons) end end) u(screen) - -- Free data on tag removal. - -- See tasklist to get why this is needed. - hooks.tags.register(function (s, tag, action) - if action == "remove" then data[tag] = nil end - end) return w end diff --git a/lib/awful/widget/tasklist.lua.in b/lib/awful/widget/tasklist.lua.in index cf5b2019..f1db5a40 100644 --- a/lib/awful/widget/tasklist.lua.in +++ b/lib/awful/widget/tasklist.lua.in @@ -74,13 +74,6 @@ function new(label, buttons) end end) u() - -- Free data on unmanage. - -- You may thing we do not need to clear data[] on unmanage because it's a - -- weak-keyed table. But in fact we need, because it's a loop reference - -- between data[client] and data[client][i] = button(reference a client in - -- the Lua registry) and since the registry and the button() are totally - -- unconnected, Lua does not free anything. - hooks.unmanage.register(function (c) data[c] = nil end) return w end