summaryrefslogtreecommitdiffstats
path: root/src/state.c
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2012-03-20 03:10:39 +0000
committerDavid Robillard <d@drobilla.net>2012-03-20 03:10:39 +0000
commitdc9c582495bca8959949521e492a68f89358e65d (patch)
treea99acf91365068c9c29ae5e24a0c9c63570538b3 /src/state.c
parente9ca7f765b636e3772780f5b32e54ade81e241af (diff)
downloadlilv-dc9c582495bca8959949521e492a68f89358e65d.tar.gz
lilv-dc9c582495bca8959949521e492a68f89358e65d.tar.bz2
lilv-dc9c582495bca8959949521e492a68f89358e65d.zip
Depend on sratom as a proper library and eliminate rampant copy/paste code reuse.
git-svn-id: http://svn.drobilla.net/lad/trunk/lilv@4082 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/state.c')
-rw-r--r--src/state.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/state.c b/src/state.c
index e2b7549..5753f25 100644
--- a/src/state.c
+++ b/src/state.c
@@ -794,6 +794,10 @@ lilv_state_write(LilvWorld* world,
}
Sratom* sratom = sratom_new(map);
+ sratom_set_sink(sratom, uri,
+ (SerdStatementSink)serd_writer_write_statement,
+ (SerdEndSink)serd_writer_end_anon,
+ writer, false);
// Write port values
for (uint32_t i = 0; i < state->num_values; ++i) {
@@ -815,7 +819,7 @@ lilv_state_write(LilvWorld* world,
// _:symbol pset:value value
p = serd_node_from_string(SERD_URI, USTR(NS_PSET "value"));
- sratom_write(sratom, unmap, writer, SERD_ANON_CONT, &port, &p,
+ sratom_write(sratom, unmap, SERD_ANON_CONT, &port, &p,
value->type, value->size, value->value);
serd_writer_end_anon(writer, &port);
@@ -836,11 +840,11 @@ lilv_state_write(LilvWorld* world,
p = serd_node_from_string(SERD_URI, USTR(key));
if (prop->type == state->atom_Path && !dir) {
const char* abs_path = lilv_state_rel2abs(state, prop->value);
- sratom_write(sratom, unmap, writer, SERD_ANON_CONT,
+ sratom_write(sratom, unmap, SERD_ANON_CONT,
&state_node, &p, prop->type,
strlen(abs_path) + 1, abs_path);
} else {
- sratom_write(sratom, unmap, writer, SERD_ANON_CONT,
+ sratom_write(sratom, unmap, SERD_ANON_CONT,
&state_node, &p, prop->type, prop->size, prop->value);
}
}