diff --git a/src/widget/context_menu.rs b/src/widget/context_menu.rs index f121bbe2..6ee253fc 100644 --- a/src/widget/context_menu.rs +++ b/src/widget/context_menu.rs @@ -269,9 +269,11 @@ impl Widget fn diff(&mut self, tree: &mut Tree) { tree.diff_children(std::slice::from_mut(&mut self.content)); let state = tree.state.downcast_mut::(); - state.menu_bar_state.inner.with_data_mut(|inner| { - menu_roots_diff(self.context_menu.as_mut().unwrap(), &mut inner.tree); - }); + if let Some(context_menu) = self.context_menu.as_mut() { + state.menu_bar_state.inner.with_data_mut(|inner| { + menu_roots_diff(context_menu, &mut inner.tree); + }); + } // if let Some(ref mut context_menus) = self.context_menu { // for (menu, tree) in context_menus