diff --git a/src/nsmenu.m b/src/nsmenu.m index 2c1f575bdf2..4a86864176d 100644 --- a/src/nsmenu.m +++ b/src/nsmenu.m @@ -477,6 +477,14 @@ - (instancetype)initWithTitle: (NSString *)title call to ns_update_menubar. */ - (void)menuNeedsUpdate: (NSMenu *)menu { + + /* The context menu is built and then displayed, as opposed to the + top-menu, which is partially built and then updated and filled in + when it's time to display it. Therefore, we don't call + ns_update_menubar if a context menu is active. */ + if (context_menu_value != 0) + return; + #ifdef NS_IMPL_GNUSTEP static int inside = 0; #endif