diff options
author | David Robillard <d@drobilla.net> | 2012-11-18 00:05:31 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2012-11-18 00:05:31 +0000 |
commit | b4718b5cc8334489a1eb50df9db920bc0b01375c (patch) | |
tree | a082532a4d958c77217244b28c36bc764e71b564 /src/client/PluginModel.cpp | |
parent | d04ce4cb7d4aa3eb72bc79c09dfe5bb025ad79f4 (diff) | |
download | ingen-b4718b5cc8334489a1eb50df9db920bc0b01375c.tar.gz ingen-b4718b5cc8334489a1eb50df9db920bc0b01375c.tar.bz2 ingen-b4718b5cc8334489a1eb50df9db920bc0b01375c.zip |
Fix Plugin=>UI ring overflow handling.
Gracefully handle client receiving nodes with as-yet unknown plugins.
Don't initially send all plugins to UI (kills LV2 in particular),
request on demand instead.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4829 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/client/PluginModel.cpp')
-rw-r--r-- | src/client/PluginModel.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/client/PluginModel.cpp b/src/client/PluginModel.cpp index 70713274..87d1aa92 100644 --- a/src/client/PluginModel.cpp +++ b/src/client/PluginModel.cpp @@ -47,6 +47,13 @@ PluginModel::PluginModel(URIs& uris, : Plugin(uris, uri) , _type(type_from_uri(type_uri)) { + if (_type == NIL) { + if (uri.find("ingen-internals") != string::npos) { + _type = Internal; + } else { + _type = LV2; // Assume LV2 and hope Lilv can tell us something + } + } add_properties(properties); assert(_rdf_world); |