plugin-sidebar: fix PostFader insert
authorRobin Gareus <robin@gareus.org>
Sun, 27 Dec 2015 14:32:24 +0000 (15:32 +0100)
committerRobin Gareus <robin@gareus.org>
Sun, 27 Dec 2015 14:32:24 +0000 (15:32 +0100)
gtk2_ardour/mixer_ui.cc

index 5b27ee7623f0e8b0236bc5d1dbef53dbcfe8e76e..822363c1a8db2ad2a9802dbe2085e6c9b8859969 100644 (file)
@@ -37,6 +37,7 @@
 #include <gtkmm2ext/tearoff.h>
 #include <gtkmm2ext/window_title.h>
 
+#include "ardour/amp.h"
 #include "ardour/debug.h"
 #include "ardour/midi_track.h"
 #include "ardour/plugin_manager.h"
@@ -2422,7 +2423,16 @@ Mixer_UI::add_favorite_processor (ARDOUR::PluginPresetPtr ppp, ProcessorPosition
                                rt->add_processor (processor, PreFader, &err, Config->get_new_plugins_active ());
                                break;
                        case AddPostFader:
-                               rt->add_processor (processor, PostFader, &err, Config->get_new_plugins_active ());
+                               {
+                                       int idx = 0;
+                                       for (;;++idx) {
+                                               boost::shared_ptr<Processor> np = rt->nth_processor (idx);
+                                               if (!np || boost::dynamic_pointer_cast<Amp> (np)) {
+                                                       break;
+                                               }
+                                       }
+                                       rt->add_processor_by_index (processor, ++idx, &err, Config->get_new_plugins_active ());
+                               }
                                break;
                        case AddBottom:
                                rt->add_processor_by_index (processor, -1, &err, Config->get_new_plugins_active ());