From 985eb9367462b83d0f741bd7c88fcbe40cc62ca0 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Thu, 18 Mar 2021 12:49:51 -0600 Subject: [PATCH] avoid possible iterator corruption in MIDI region selection handling --- gtk2_ardour/editor_selection.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gtk2_ardour/editor_selection.cc b/gtk2_ardour/editor_selection.cc index 868b25cb45..443c071fd7 100644 --- a/gtk2_ardour/editor_selection.cc +++ b/gtk2_ardour/editor_selection.cc @@ -1683,12 +1683,15 @@ Editor::select_all_internal_edit (Selection::Operation) { bool selected = false; - for (RegionSelection::iterator i = selection->regions.begin(); i != selection->regions.end(); ++i) { + for (RegionSelection::iterator i = selection->regions.begin(); i != selection->regions.end(); ) { + RegionSelection::iterator tmp = i; + ++tmp; MidiRegionView* mrv = dynamic_cast(*i); if (mrv) { mrv->select_all_notes (); selected = true; } + i = tmp; } MidiRegionView* mrv = dynamic_cast(entered_regionview);