diff --git a/libs/backends/alsa/alsa_audiobackend.cc b/libs/backends/alsa/alsa_audiobackend.cc index 5c267d6c7f..0d7e33cd63 100644 --- a/libs/backends/alsa/alsa_audiobackend.cc +++ b/libs/backends/alsa/alsa_audiobackend.cc @@ -2319,7 +2319,7 @@ void* AlsaMidiPort::get_buffer (pframes_t /* nframes */) (_buffer[_bufperiod]).push_back (boost::shared_ptr(new AlsaMidiEvent (**it))); } } - std::sort ((_buffer[_bufperiod]).begin (), (_buffer[_bufperiod]).end (), MidiEventSorter()); + std::stable_sort ((_buffer[_bufperiod]).begin (), (_buffer[_bufperiod]).end (), MidiEventSorter()); } return &(_buffer[_bufperiod]); } diff --git a/libs/backends/coreaudio/coreaudio_backend.cc b/libs/backends/coreaudio/coreaudio_backend.cc index 504a7376f9..0ef1e6332b 100644 --- a/libs/backends/coreaudio/coreaudio_backend.cc +++ b/libs/backends/coreaudio/coreaudio_backend.cc @@ -2142,7 +2142,7 @@ void* CoreMidiPort::get_buffer (pframes_t /* nframes */) (_buffer[_bufperiod]).push_back (boost::shared_ptr(new CoreMidiEvent (**it))); } } - std::sort ((_buffer[_bufperiod]).begin (), (_buffer[_bufperiod]).end (), MidiEventSorter()); + std::stable_sort ((_buffer[_bufperiod]).begin (), (_buffer[_bufperiod]).end (), MidiEventSorter()); } return &(_buffer[_bufperiod]); diff --git a/libs/backends/dummy/dummy_audiobackend.cc b/libs/backends/dummy/dummy_audiobackend.cc index 28d73d462e..73ddc8225b 100644 --- a/libs/backends/dummy/dummy_audiobackend.cc +++ b/libs/backends/dummy/dummy_audiobackend.cc @@ -2134,7 +2134,7 @@ void* DummyMidiPort::get_buffer (pframes_t n_samples) _buffer.push_back (boost::shared_ptr(new DummyMidiEvent (**it))); } } - std::sort (_buffer.begin (), _buffer.end (), MidiEventSorter()); + std::stable_sort (_buffer.begin (), _buffer.end (), MidiEventSorter()); } else if (is_output () && is_physical () && is_terminal()) { if (!_gen_cycle) { midi_generate(n_samples); diff --git a/libs/backends/portaudio/portaudio_backend.cc b/libs/backends/portaudio/portaudio_backend.cc index b25a54f7a9..c2402a994d 100644 --- a/libs/backends/portaudio/portaudio_backend.cc +++ b/libs/backends/portaudio/portaudio_backend.cc @@ -2374,7 +2374,7 @@ void* PortMidiPort::get_buffer (pframes_t /* nframes */) (_buffer[_bufperiod]).push_back (boost::shared_ptr(new PortMidiEvent (**it))); } } - std::sort ((_buffer[_bufperiod]).begin (), (_buffer[_bufperiod]).end (), MidiEventSorter()); + std::stable_sort ((_buffer[_bufperiod]).begin (), (_buffer[_bufperiod]).end (), MidiEventSorter()); } return &(_buffer[_bufperiod]); }