summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2012-05-02 06:21:51 +0000
committerDavid Robillard <d@drobilla.net>2012-05-02 06:21:51 +0000
commit0de3a4f70eafb0dc40292990ddd4064ac6e0758f (patch)
tree0df6c10fed500769f77b53be51e343805eda65cb
parent40cae22e899f1d316461b7c4b382513334497df9 (diff)
downloadsratom-0de3a4f70eafb0dc40292990ddd4064ac6e0758f.tar.gz
sratom-0de3a4f70eafb0dc40292990ddd4064ac6e0758f.tar.bz2
sratom-0de3a4f70eafb0dc40292990ddd4064ac6e0758f.zip
Correctly read objects with several rdf:type properties.
git-svn-id: http://svn.drobilla.net/lad/trunk/sratom@4310 a436a847-0d15-0410-975c-d299462d15a1
-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)