From bb0d97b79c2295f5ff588b1a1b81562f6598f289 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 19 Jun 2011 01:43:01 +0000 Subject: Fix abbreviation flags for blank nodes within lists (fix ticket #719). git-svn-id: http://svn.drobilla.net/serd/trunk@206 490d8e77-9747-427b-9fa3-0b8f29cee8a0 --- src/reader.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/reader.c b/src/reader.c index 67f53513..e08956ef 100644 --- a/src/reader.c +++ b/src/reader.c @@ -1025,7 +1025,7 @@ blank_id(SerdReader* reader) static bool read_blank(SerdReader* reader, ReadContext ctx, bool subject, Node* dest) { - const bool was_anon_subject = (*ctx.flags | SERD_ANON_CONT); + const bool was_anon_subject = subject && (*ctx.flags | SERD_ANON_CONT); switch (peek_byte(reader)) { case '_': *dest = make_node(SERD_BLANK, read_nodeID(reader)); @@ -1062,7 +1062,7 @@ read_blank(SerdReader* reader, ReadContext ctx, bool subject, Node* dest) const SerdNode end = public_node(reader, dest); reader->end_sink(reader->handle, &end); } - if (subject && !was_anon_subject) { + if (!was_anon_subject) { *ctx.flags &= ~SERD_ANON_CONT; } return true; -- cgit v1.2.1