From 5755c616f35cc1c1fc5e94ecbc9c38a5a7f52275 Mon Sep 17 00:00:00 2001 From: MihailRis Date: Mon, 13 Oct 2025 12:29:09 +0300 Subject: [PATCH] fix: missing yaml null literals --- src/coders/yaml.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/coders/yaml.cpp b/src/coders/yaml.cpp index b10d5ce2..33eab3a5 100644 --- a/src/coders/yaml.cpp +++ b/src/coders/yaml.cpp @@ -38,7 +38,7 @@ static dv::value perform_literal(std::string_view literal) { literal == "false" || literal == "False") { return literal[0] == 't'; } - if (literal == "null" || literal == "Null") { + if (literal == "null" || literal == "Null" || literal == "~") { return nullptr; } return std::string(literal); @@ -204,8 +204,9 @@ dv::value Parser::parseFullValue(int indent) { skipEmptyLines(); int init_pos = pos; int next_indent = countIndent(); - if (next_indent < indent) { - throw error("indentation error"); + if (next_indent <= indent) { + pos = init_pos; + return nullptr; } if (source[pos] == '-') { pos = init_pos;