From 6ac10dcc03d27c8ef8534fc84d1e90fff6f53d87 Mon Sep 17 00:00:00 2001 From: vlastahajek Date: Wed, 29 Apr 2020 13:54:11 +0200 Subject: [PATCH] fix: Handling missing or bad ordered datatype annotation --- query.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/query.go b/query.go index f2018a49..66e8666f 100644 --- a/query.go +++ b/query.go @@ -276,7 +276,7 @@ readRow: goto readRow } if q.table == nil { - q.err = errors.New("parsing error, table definition not found") + q.err = errors.New("parsing error, datatype annotation not found") return false } if len(row)-1 != len(q.table.Columns()) { @@ -302,6 +302,10 @@ readRow: } goto readRow case "#group": + if q.table == nil { + q.err = errors.New("parsing error, datatype annotation not found") + return false + } for i, g := range row[1:] { if q.table.Column(i) != nil { q.table.Column(i).SetGroup(g == "true") @@ -309,6 +313,10 @@ readRow: } goto readRow case "#default": + if q.table == nil { + q.err = errors.New("parsing error, datatype annotation not found") + return false + } for i, c := range row[1:] { if q.table.Column(i) != nil { q.table.Column(i).SetDefaultValue(c)