From 42359d8915d2be77599f1030da5b28b608f66096 Mon Sep 17 00:00:00 2001 From: Larpon Date: Thu, 7 Oct 2021 14:51:18 +0200 Subject: [PATCH] toml: fix error return in value parsing (#12097) --- vlib/toml/parser/parser.v | 10 ++++++---- vlib/toml/tests/burntsushi.toml-test_test.v | 1 - 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/vlib/toml/parser/parser.v b/vlib/toml/parser/parser.v index cdb78891bb..242e6426ac 100644 --- a/vlib/toml/parser/parser.v +++ b/vlib/toml/parser/parser.v @@ -650,13 +650,15 @@ pub fn (mut p Parser) value() ?ast.Value { ast.Value(t) } else { - error(@MOD + '.' + @STRUCT + '.' + @FN + - ' value expected .boolean, .quoted, .lsbr, .lcbr or .number got "$p.tok.kind" "$p.tok.lit"') - ast.Value(ast.Null{}) // TODO workaround bug + ast.Value(ast.Null{}) } } + if value is ast.Null { + return error(@MOD + '.' + @STRUCT + '.' + @FN + + ' value expected .boolean, .quoted, .lsbr, .lcbr or .number got "$p.tok.kind" "$p.tok.lit"') + } } - util.printdbg(@MOD + '.' + @STRUCT + '.' + @FN, 'parsed value $value.to_json()') + util.printdbg(@MOD + '.' + @STRUCT + '.' + @FN, 'parsed "$p.tok.kind" as value $value.to_json()') return value } diff --git a/vlib/toml/tests/burntsushi.toml-test_test.v b/vlib/toml/tests/burntsushi.toml-test_test.v index ccb7dcfd5d..1059a1d494 100644 --- a/vlib/toml/tests/burntsushi.toml-test_test.v +++ b/vlib/toml/tests/burntsushi.toml-test_test.v @@ -20,7 +20,6 @@ const ( 'string/basic-out-of-range-unicode-escape-1.toml', 'string/basic-out-of-range-unicode-escape-2.toml', 'string/bad-uni-esc.toml', - 'string/missing-quotes.toml', // Integer 'integer/capital-bin.toml', 'integer/invalid-bin.toml',