diff --git a/lib/awful/tag.lua b/lib/awful/tag.lua index 4bedff29..38a05243 100644 --- a/lib/awful/tag.lua +++ b/lib/awful/tag.lua @@ -1811,6 +1811,7 @@ capi.screen.connect_signal("removed", function(s) t._private.awful_tag_properties.screen = nil end end + data.history[s] = nil end) function tag.mt:__call(...) diff --git a/tests/test-leaks.lua b/tests/test-leaks.lua index 8a235760..a29ac376 100644 --- a/tests/test-leaks.lua +++ b/tests/test-leaks.lua @@ -81,6 +81,16 @@ collectable(awful.widget.tasklist{screen=1, filter=awful.widget.tasklist.filter. prepare_for_collect = run_delayed_calls collectable(create_wibox()) +-- Test that screens can be collected +local function create_and_remove_screen() + local s = screen.fake_add(-10, -10, 10, 10) + awful.tag.viewnext(s) + s:fake_remove() + return s +end +prepare_for_collect = run_delayed_calls +collectable(create_and_remove_screen()) + runner.run_steps({ function() return true end }) -- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80