diff options
author | Thomas Grill <xovo@users.sourceforge.net> | 2005-03-17 04:57:22 +0000 |
---|---|---|
committer | Thomas Grill <xovo@users.sourceforge.net> | 2005-03-17 04:57:22 +0000 |
commit | 428806256328220836f6833c7b0fea5bc7157eac (patch) | |
tree | db5bf3316bcf833f4820a75dce0eab4c6d699bef /externals/grill/vst/src/vsthost.cpp | |
parent | 4fe8863a1176f7fe4057d82b2844dd7127b13bca (diff) |
clean handling of plugin deletion (potentially open editor window etc.)
workarounds for Waves5 bundle
svn path=/trunk/; revision=2631
Diffstat (limited to 'externals/grill/vst/src/vsthost.cpp')
-rw-r--r-- | externals/grill/vst/src/vsthost.cpp | 7 |
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); |