From 1458daf316475e8c07102e4886664c4fd6790432 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Daniel=20Mart=C3=ADn?= Date: Thu, 13 Jul 2023 10:47:35 +0200 Subject: [PATCH] Avoid crashes on macOS with context menus * src/nsmenu.m ([EmacsMenu menuNeedsUpdate:]): Avoid crashes with context menus. (Bug#63495) --- src/nsmenu.m | 8 ++++++++ 1 file changed, 8 insertions(+) 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 @@ set_frame_menubar (struct frame *f, bool deep_p) 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 -- 2.39.2