aboutsummaryrefslogtreecommitdiff
path: root/externals/grill/vst/src/vsthost.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'externals/grill/vst/src/vsthost.cpp')
-rw-r--r--externals/grill/vst/src/vsthost.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/externals/grill/vst/src/vsthost.cpp b/externals/grill/vst/src/vsthost.cpp
index 5f2443fc..8cb69f93 100644
--- a/externals/grill/vst/src/vsthost.cpp
+++ b/externals/grill/vst/src/vsthost.cpp
@@ -311,7 +311,12 @@ bool VSTPlugin::Instance(const char *name,const char *subname)
long plugid;
char tmp[64];
- // scan shell for subplugins
+
+ // Waves5 continues with the next plug after the last loaded
+ // that's not what we want - workaround: swallow all remaining
+ while((plugid = Dispatch(effShellGetNextPlugin,0,0,tmp))) {}
+
+ // restart from the beginning
while((plugid = Dispatch(effShellGetNextPlugin,0,0,tmp))) {
// subplug needs a name
FLEXT_LOG1("subplug %s",tmp);