Hi Jules, I think there is a race condition in Component, namely in how the Component::removeFromDesktop handles the peer member.
When a peer is removed from the desktop, the OS window is deleted and removed, but the peer member is never cleared. Normally,
the removeFromDesktop is called from the ctor of Component so it would not matter.
I am getting intermittent crashed when using Tootips in debug builds. It turns out that Component::removeFromDesktop is called from
TooltipWindow::hide on occasion. About 1:1000 this leads to a crash for me - in debug build. Particularly when creating /deleting / recreating tooltips in rapid succession.
The peer pointer is not zeroed, but since the content was deleted, it points to a lot of 0xfeeefeee
I think this can be remedied by simply zeroing the peer member after deletion in Component::removeFromDesktop
Thanks for reading.