From 41164a763cdc9270dadcf45549c715ce90a47ed5 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 30 Jan 2011 23:01:41 +0000 Subject: Make slv2_ui_new take SLV2Value URI arguments rather than librdf_uri. Avoids an unnecessary node copy, UI takes ownership of queried nodes. git-svn-id: http://svn.drobilla.net/lad/trunk/slv2@2877 a436a847-0d15-0410-975c-d299462d15a1 --- src/pluginui.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) (limited to 'src/pluginui.c') diff --git a/src/pluginui.c b/src/pluginui.c index 8c6b0f3..7cbf475 100644 --- a/src/pluginui.c +++ b/src/pluginui.c @@ -29,31 +29,29 @@ /* private */ SLV2UI -slv2_ui_new(SLV2World world, - librdf_uri* uri, - librdf_uri* type_uri, - librdf_uri* binary_uri) +slv2_ui_new(SLV2World world, + SLV2Value uri, + SLV2Value type_uri, + SLV2Value binary_uri) { assert(uri); assert(type_uri); assert(binary_uri); struct _SLV2UI* ui = malloc(sizeof(struct _SLV2UI)); - ui->world = world; - ui->uri = slv2_value_new_librdf_uri(world, uri); - ui->binary_uri = slv2_value_new_librdf_uri(world, binary_uri); - - assert(ui->binary_uri); + ui->world = world; + ui->uri = uri; + ui->binary_uri = binary_uri; // FIXME: kludge - char* bundle = strdup(slv2_value_as_string(ui->binary_uri)); + char* bundle = strdup(slv2_value_as_string(ui->binary_uri)); char* last_slash = strrchr(bundle, '/') + 1; *last_slash = '\0'; ui->bundle_uri = slv2_value_new_uri(world, bundle); free(bundle); ui->classes = slv2_values_new(); - raptor_sequence_push(ui->classes, slv2_value_new_librdf_uri(world, type_uri)); + raptor_sequence_push(ui->classes, type_uri); return ui; } -- cgit v1.2.1