summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS6
-rw-r--r--src/sratom.c3
-rw-r--r--wscript2
3 files changed, 9 insertions, 2 deletions
diff --git a/NEWS b/NEWS
index f1372bb..c326008 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,9 @@
+sratom (9999) unstable;
+
+ * Correctly read objects with several rdf:type properties
+
+ -- David Robillard <d@drobilla.net>
+
sratom (0.2.0) stable;
* Initial release
diff --git a/src/sratom.c b/src/sratom.c
index fe53065..a1508a6 100644
--- a/src/sratom.c
+++ b/src/sratom.c
@@ -639,7 +639,8 @@ read_node(Sratom* sratom,
const SordNode* p = match[SORD_PREDICATE];
const char* p_uri = (const char*)sord_node_get_string(p);
uint32_t p_urid = map->map(map->handle, p_uri);
- if (!sord_node_equals(p, sratom->nodes.rdf_type)) {
+ if (!(sord_node_equals(p, sratom->nodes.rdf_type)
+ && sord_node_equals(match[SORD_OBJECT], type))) {
// TODO: This will lose multiple rdf:type properties
lv2_atom_forge_property_head(forge, p_urid, 0);
read_node(sratom, forge, world, model,
diff --git a/wscript b/wscript
index 6984bae..2e4f9fe 100644
--- a/wscript
+++ b/wscript
@@ -9,7 +9,7 @@ from waflib.extras import autowaf as autowaf
import waflib.Logs as Logs, waflib.Options as Options
# Version of this package (even if built as a child)
-SRATOM_VERSION = '0.2.0'
+SRATOM_VERSION = '0.2.1'
SRATOM_MAJOR_VERSION = '0'
# Library version (UNIX style major, minor, micro)