diff --git a/modules/juce_gui_basics/menus/juce_PopupMenu.cpp b/modules/juce_gui_basics/menus/juce_PopupMenu.cpp index 2a357bd4fb..54822d3bfb 100644 --- a/modules/juce_gui_basics/menus/juce_PopupMenu.cpp +++ b/modules/juce_gui_basics/menus/juce_PopupMenu.cpp @@ -509,10 +509,14 @@ struct MenuWindow : public Component auto resultID = options.hasWatchedComponentBeenDeleted() ? 0 : getResultItemID (item); exitModalState (resultID); - exitingModalState = true; - if (makeInvisible && deletionChecker != nullptr) - setVisible (false); + if (deletionChecker != nullptr) + { + exitingModalState = true; + + if (makeInvisible) + setVisible (false); + } if (resultID != 0 && item != nullptr