fix(config): fix parse error when list ends on last line of config file (#3772)
This commit is contained in:
parent
7ca2721739
commit
fc9b548edd
1 changed files with 6 additions and 2 deletions
|
|
@ -652,9 +652,13 @@ namespace config {
|
|||
// Lists might contain newlines
|
||||
if (*begin_val == '[') {
|
||||
endl = skip_list(begin_val + 1, end);
|
||||
if (endl == end) {
|
||||
BOOST_LOG(warning) << "config: Missing ']' in config option: " << to_string(begin, end_name);
|
||||
|
||||
// Check if we reached the end of the file without finding a closing bracket
|
||||
// We know we have a valid closing bracket if:
|
||||
// 1. We didn't reach the end, or
|
||||
// 2. We reached the end but the last character was the matching closing bracket
|
||||
if (endl == end && end == begin_val + 1) {
|
||||
BOOST_LOG(warning) << "config: Missing ']' in config option: " << to_string(begin, end_name);
|
||||
return std::make_pair(endl, std::nullopt);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue