-
-
Notifications
You must be signed in to change notification settings - Fork 7.9k
Don't associate Wx timers with the parent frame. #11590
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Don't associate Wx timers with the parent frame. #11590
Conversation
This looks like it also fixes #11578 for wxagg and changes the failure on wx to a timeout. Can you rebase this on master and re-enable the wxagg tests? |
done |
03ed370
to
9d4cc11
Compare
Doesn't segfault travis anymore, but still fails (as you noted, on a timeout). Let's keep this wx test disabled? |
Yes, leave |
I'm puzzled why wx fails when wxagg works (they should share the same code re: interactivity), but sure... |
9d4cc11
to
27e9c2b
Compare
Given that it is timing out probably something subtle in the draw / render / put the window on the (fake) screen process? |
Well, that still fails. Let's just get rid of the wx test. |
This is consistent with the behavior on Qt and GTK, and avoids a segfault due to lack of disconnection of the timer after the parent widget is destroyed (otherwise, we'd need to keep track of timers associated with each widget and tear them down when the widget is destroyed).
27e9c2b
to
4270fd0
Compare
@DietmarSchwertberger Can you review this? |
Looks good to me. Pending events are the most common source of segfaults... |
Thanks @DietmarSchwertberger ! |
This is consistent with the behavior on Qt and GTK, and avoids a
segfault due to lack of disconnection of the timer after the parent
widget is destroyed (otherwise, we'd need to keep track of timers
associated with each widget and tear them down when the widget is
destroyed).
Closes #11582.
Marking as release-critical per "fixes a segfault", though not a regression so not insisting on it.
PR Summary
PR Checklist