vlc | branch: master | Francois Cartegnie <[email protected]> | Tue Jun 26 17:20:44 2012 +0200| [e5462dbd3a789e15278afd642833788a8a491724] | committer: Francois Cartegnie
Qt: PopupMenu: Stop crashing on VOut update. (fix #7016) When calling a modal dialog, Qt switches to a new event loop. The call may still have some event to process in its own queue, and deleting it when doing the Vout update will have those events refering to a no longer existing widget. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e5462dbd3a789e15278afd642833788a8a491724 --- modules/gui/qt4/menus.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 18bb5ca..3969de1 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -769,7 +769,8 @@ QMenu *VLCMenuBar::HelpMenu( QWidget *parent ) *****************************************************************************/ #define POPUP_BOILERPLATE \ static QMenu* menu = NULL; \ - delete menu; menu = NULL; \ + if ( menu ) menu->deleteLater(); \ /* Ensure it is deleted after processing events */ + menu = NULL; \ /* or we might crash on an incoming mouseup event */ if( !show ) \ return; \ QVector<vlc_object_t *> objects; \ _______________________________________________ vlc-commits mailing list [email protected] http://mailman.videolan.org/listinfo/vlc-commits
