From 01426de7afd04e8a00c6d2fdd25893da83f70180 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 18 Aug 2019 19:59:30 +0200 Subject: Fix lilv_plugin_get_latency_port_index() for lv2:latency designation --- src/plugin.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/plugin.c b/src/plugin.c index b2648dd..e1567f4 100644 --- a/src/plugin.c +++ b/src/plugin.c @@ -731,10 +731,19 @@ lilv_plugin_get_port_by_designation(const LilvPlugin* plugin, LILV_API uint32_t lilv_plugin_get_latency_port_index(const LilvPlugin* plugin) { + LilvNode* lv2_OutputPort = + lilv_new_uri(plugin->world, LV2_CORE__OutputPort); + LilvNode* lv2_latency = + lilv_new_uri(plugin->world, LV2_CORE__latency); + const LilvPort* prop_port = lilv_plugin_get_port_by_property( plugin, plugin->world->uris.lv2_reportsLatency); - const LilvPort* des_port = lilv_plugin_get_port_by_property( - plugin, plugin->world->uris.lv2_latency); + const LilvPort* des_port = lilv_plugin_get_port_by_designation( + plugin, lv2_OutputPort, lv2_latency); + + lilv_node_free(lv2_latency); + lilv_node_free(lv2_OutputPort); + if (prop_port) { return prop_port->index; } else if (des_port) { -- cgit v1.2.1