diff options
Diffstat (limited to 'libs/ardour/ardour/ladspa_plugin.h')
-rw-r--r-- | libs/ardour/ardour/ladspa_plugin.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libs/ardour/ardour/ladspa_plugin.h b/libs/ardour/ardour/ladspa_plugin.h index b7cca2270d..81936ab3d3 100644 --- a/libs/ardour/ardour/ladspa_plugin.h +++ b/libs/ardour/ardour/ladspa_plugin.h @@ -71,17 +71,23 @@ class LadspaPlugin : public ARDOUR::Plugin if (descriptor->activate) { descriptor->activate (handle); } + was_activated = true; } void deactivate () { if (!was_activated) return; - if (descriptor->deactivate) + if (descriptor->deactivate) { descriptor->deactivate (handle); + } + + was_activated = false; } void cleanup () { - if (was_activated && descriptor->cleanup) { + deactivate(); + + if (descriptor->cleanup) { descriptor->cleanup (handle); } } |