diff --git a/repos/gems/src/server/wm/nitpicker.h b/repos/gems/src/server/wm/nitpicker.h index 3711c529c0..3d80789442 100644 --- a/repos/gems/src/server/wm/nitpicker.h +++ b/repos/gems/src/server/wm/nitpicker.h @@ -263,6 +263,8 @@ class Wm::Nitpicker::Top_level_view : public View, { if (_win_id.valid()) _window_registry.destroy(_win_id); + + View::lock_for_destruction(); } void _propagate_view_geometry() override { } @@ -349,6 +351,11 @@ class Wm::Nitpicker::Child_view : public View, try_to_init_real_view(); } + ~Child_view() + { + View::lock_for_destruction(); + } + void _propagate_view_geometry() override { _real_nitpicker.enqueue(_real_handle, _geometry);