From 11a7aad0ee2a654745068a3baf13498efc1ca07a Mon Sep 17 00:00:00 2001 From: Markus Gans Date: Sun, 3 Jul 2016 20:27:27 +0200 Subject: [PATCH] Fix unchecked dynamic_cast --- src/fmenuitem.cpp | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/fmenuitem.cpp b/src/fmenuitem.cpp index 31ff0f71..e7421ffc 100644 --- a/src/fmenuitem.cpp +++ b/src/fmenuitem.cpp @@ -263,14 +263,17 @@ void FMenuItem::createDialogList (FMenu* winmenu) if ( (*iter)->isDialog() ) { FDialog* win = dynamic_cast(*iter); - FString win_title = win->getText(); - FMenuItem* win_item = new FMenuItem (win_title, winmenu); - win_item->addCallback - ( - "clicked", - _METHOD_CALLBACK (this, &FMenuItem::cb_switchToDialog), - dynamic_cast(win) - ); + if ( win ) + { + FString win_title = win->getText(); + FMenuItem* win_item = new FMenuItem (win_title, winmenu); + win_item->addCallback + ( + "clicked", + _METHOD_CALLBACK (this, &FMenuItem::cb_switchToDialog), + dynamic_cast(win) + ); + } } } while ( iter != begin );