From 47a2a3332bab8c50315143b9f37d5163d8929823 Mon Sep 17 00:00:00 2001 From: ToruNiina Date: Sun, 27 Jun 2021 18:56:33 +0900 Subject: [PATCH] fix: use empty quoted string for empty key --- toml/serializer.hpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/toml/serializer.hpp b/toml/serializer.hpp index 3012e44..4881c3d 100644 --- a/toml/serializer.hpp +++ b/toml/serializer.hpp @@ -29,6 +29,11 @@ template std::basic_string format_key(const std::basic_string& k) { + if(k.empty()) + { + return std::string("\"\""); + } + // check the key can be a bare (unquoted) key detail::location loc(k, std::vector(k.begin(), k.end())); detail::lex_unquoted_key::invoke(loc); @@ -61,9 +66,12 @@ template std::basic_string format_keys(const std::vector>& keys) { - std::basic_string serialized; - if(keys.empty()) {return serialized;} + if(keys.empty()) + { + return std::string("\"\""); + } + std::basic_string serialized; for(const auto& ky : keys) { serialized += format_key(ky);