diff options
-rw-r--r-- | gtk2_ardour/mixer_ui.cc | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/gtk2_ardour/mixer_ui.cc b/gtk2_ardour/mixer_ui.cc index 6384a7bf6a..02c4c1cb86 100644 --- a/gtk2_ardour/mixer_ui.cc +++ b/gtk2_ardour/mixer_ui.cc @@ -2255,11 +2255,13 @@ Mixer_UI::refiller (PluginInfoList& result, const PluginInfoList& plugs) struct PluginCustomSorter { public: bool operator() (PluginInfoPtr a, PluginInfoPtr b) const { - PluginInfoList::const_iterator aiter = std::find(_user.begin(), _user.end(), a); - PluginInfoList::const_iterator biter = std::find(_user.begin(), _user.end(), b); + PluginInfoList::const_iterator aiter = _user.begin(); + PluginInfoList::const_iterator biter = _user.begin(); + while (aiter != _user.end()) { if ((*aiter)->name == a->name) { break; } ++aiter; } + while (biter != _user.end()) { if ((*biter)->name == b->name) { break; } ++biter; } if (aiter != _user.end() && biter != _user.end()) { - return std::distance (_user.begin(), aiter) < std::distance (_user.begin(), biter); + return std::distance (_user.begin(), aiter) < std::distance (_user.begin(), biter); } if (aiter != _user.end()) { return true; |