[PATCH 0/4] bootconfig: Fix a parser bug

From: Masami Hiramatsu
Date: Mon Sep 21 2020 - 05:44:39 EST


Hi,

Here are patches to fix 2 bugs in the parser. One issue happens
when a key has a siblings and the key repeated with brace after
sibling nodes. Another one is that the parser keeps tailing
spaces when we put a comment on the line.

For example, the minimum example of the 1st issue is here;

foo
bar
foo { buz }

This should be parsed as

foo.buz
bar

But the bootconfig parser parses it as foo.buz (no bar node)
because foo->bar link is unlinked when the brace ("foo {") was
found.

The second one is simpler, if we have

foo = val # comment

The value's space after the word was not removed.

foo="val "

But this also should be

foo="val"

If user needs tailing spaces, they can use quotes, e.g.

foo = "val " # comment


Thank you,

---

Masami Hiramatsu (4):
lib/bootconfig: Fix a bug of breaking existing tree nodes
lib/bootconfig: Fix to remove tailing spaces after value
tools/bootconfig: Add testcases for repeated key with brace
tools/bootconfig: Add testcase for tailing space


tools/bootconfig/test-bootconfig.sh | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

--
Masami Hiramatsu (Linaro) <mhiramat@xxxxxxxxxx>