diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc index f7c48daf3b..6648629216 100644 --- a/gtk2_ardour/editor.cc +++ b/gtk2_ardour/editor.cc @@ -1523,6 +1523,11 @@ Editor::build_track_region_context_menu () region_edit_menu_split_item = 0; region_edit_menu_split_multichannel_item = 0; + /* we might try to use items that are currently attached to a crossfade menu, + so clear that, too. + */ + track_crossfade_context_menu.items().clear (); + RouteTimeAxisView* rtv = dynamic_cast (clicked_axisview); if (rtv) { @@ -1551,6 +1556,11 @@ Editor::build_track_crossfade_context_menu () MenuList& edit_items = track_crossfade_context_menu.items(); edit_items.clear (); + /* we might try to use items that are currently attached to a crossfade menu, + so clear that, too. + */ + track_region_context_menu.items().clear (); + AudioTimeAxisView* atv = dynamic_cast (clicked_axisview); if (atv) { @@ -1715,7 +1725,7 @@ Editor::add_region_context_items (Menu_Helpers::MenuList& edit_items, bool multi } if (_popup_region_menu_item == 0) { - _popup_region_menu_item = new MenuItem (menu_item_name); + _popup_region_menu_item = manage (new MenuItem (menu_item_name)); _popup_region_menu_item->set_submenu (*dynamic_cast (ActionManager::get_widget (X_("/PopupRegionMenu")))); _popup_region_menu_item->show (); } else {