diff options
author | David Robillard <d@drobilla.net> | 2015-01-29 22:49:40 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2015-01-29 22:49:40 +0000 |
commit | 3eb918b6b08821cecd92381c3f8c7967ca5bd995 (patch) | |
tree | 9453b56f44eaeabaa80c733ccff42c3098a88628 /src/client | |
parent | dea82e3c11940c8a948fd6555ea70b2fa35c015a (diff) | |
download | ingen-3eb918b6b08821cecd92381c3f8c7967ca5bd995.tar.gz ingen-3eb918b6b08821cecd92381c3f8c7967ca5bd995.tar.bz2 ingen-3eb918b6b08821cecd92381c3f8c7967ca5bd995.zip |
Add lilv_file_uri_parse() for correct URI to path conversion.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5528 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/client')
-rw-r--r-- | src/client/PluginUI.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/client/PluginUI.cpp b/src/client/PluginUI.cpp index 4b8651db..31e1f9ae 100644 --- a/src/client/PluginUI.cpp +++ b/src/client/PluginUI.cpp @@ -238,6 +238,11 @@ PluginUI::create(Ingen::World* world, lilv_node_free(ui_plugin); lilv_node_free(ui_portNotification); + const char* bundle_uri = lilv_node_as_uri(lilv_ui_get_bundle_uri(ui)); + const char* binary_uri = lilv_node_as_uri(lilv_ui_get_binary_uri(ui)); + char* bundle_path = lilv_file_uri_parse(bundle_uri, NULL); + char* binary_path = lilv_file_uri_parse(binary_uri, NULL); + // Instantiate the actual plugin UI via Suil SuilInstance* instance = suil_instance_new( PluginUI::ui_host, @@ -246,10 +251,12 @@ PluginUI::create(Ingen::World* world, lilv_node_as_uri(lilv_plugin_get_uri(plugin)), lilv_node_as_uri(lilv_ui_get_uri(ui)), lilv_node_as_uri(ui_type), - lilv_uri_to_path(lilv_node_as_uri(lilv_ui_get_bundle_uri(ui))), - lilv_uri_to_path(lilv_node_as_uri(lilv_ui_get_binary_uri(ui))), + bundle_path, + binary_path, ret->_features->array()); + free(binary_path); + free(bundle_path); lilv_node_free(gtk_ui); if (!instance) { |