diff options
author | Robin Gareus <robin@gareus.org> | 2015-12-10 19:31:00 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2015-12-10 19:31:00 +0100 |
commit | 5630332797a7a7edb596815e57c2485393be0a74 (patch) | |
tree | 8ebc9aee1a9a384a05de4cdd0afd474f351f11b4 /libs/ardour/lv2_plugin.cc | |
parent | 699f9b097d51344058eaa623e564452534dfdb2f (diff) |
fix LV2 plugin state for copied plugins.
Diffstat (limited to 'libs/ardour/lv2_plugin.cc')
-rw-r--r-- | libs/ardour/lv2_plugin.cc | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libs/ardour/lv2_plugin.cc b/libs/ardour/lv2_plugin.cc index 7c9e901ebb..7e06a9f266 100644 --- a/libs/ardour/lv2_plugin.cc +++ b/libs/ardour/lv2_plugin.cc @@ -1664,7 +1664,13 @@ LV2Plugin::work_response(uint32_t size, const void* data) void LV2Plugin::set_insert_id(PBD::ID id) { - _insert_id = id; + if (_insert_id == "0") { + _insert_id = id; + } else if (_insert_id != id) { + lilv_state_free(_impl->state); + _impl->state = NULL; + _insert_id = id; + } } int |