From b4718b5cc8334489a1eb50df9db920bc0b01375c Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 18 Nov 2012 00:05:31 +0000 Subject: 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 --- src/client/ClientStore.cpp | 2 -- src/client/PluginModel.cpp | 7 +++++++ 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'src/client') diff --git a/src/client/ClientStore.cpp b/src/client/ClientStore.cpp index 71e28c09..fe79336b 100644 --- a/src/client/ClientStore.cpp +++ b/src/client/ClientStore.cpp @@ -270,8 +270,6 @@ ClientStore::put(const Raul::URI& uri, SharedPtr plug; if (p->second.is_valid() && p->second.type() == _uris.forge.URI) { if (!(plug = _plugin(Raul::URI(p->second.get_uri())))) { - _log.warn(Raul::fmt("Unable to find plugin <%1%>\n") - % p->second.get_uri()); plug = SharedPtr( new PluginModel(uris(), Raul::URI(p->second.get_uri()), 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); -- cgit v1.2.1