From f8c8f7e02605c10af0b6bc9f1261e893dc825e97 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sat, 23 Sep 2017 14:42:00 +0200 Subject: Report errors for all failing test cases --- src/reader.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/reader.c b/src/reader.c index bdfd23d3..73821584 100644 --- a/src/reader.c +++ b/src/reader.c @@ -1561,9 +1561,13 @@ read_wrappedGraph(SerdReader* reader, ReadContext* ctx) while (peek_byte(reader) != '}') { ctx->subject = 0; Ref subj = read_subject(reader, *ctx, &ctx->subject, &s_type); - if (!subj || - (!read_triples(reader, *ctx, &ate_dot) && s_type != '[')) { + if (!subj && ctx->subject) { + return r_err(reader, SERD_ERR_BAD_SYNTAX, "bad subject\n"); + } else if (!subj) { return false; + } else if (!read_triples(reader, *ctx, &ate_dot) && s_type != '[') { + return r_err(reader, SERD_ERR_BAD_SYNTAX, + "missing predicate object list\n"); } pop_node(reader, subj); read_ws_star(reader); @@ -1637,7 +1641,8 @@ read_statement(SerdReader* reader) read_ws_star(reader); } else if (read_ws_star(reader) && peek_byte(reader) == '{') { if (s_type == '(' || (s_type == '[' && !*ctx.flags)) { - return false; // invalid graph with complex label + return r_err(reader, SERD_ERR_BAD_SYNTAX, + "invalid graph name\n"); } ctx.graph = subj; ctx.subject = subj = 0; -- cgit v1.2.1