aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp
diff options
context:
space:
mode:
authorvoevodskiy <voevodskiy@yandex-team.com>2025-04-16 10:55:30 +0300
committervoevodskiy <voevodskiy@yandex-team.com>2025-04-16 11:13:01 +0300
commitf4d366e1882cfbae7ccda2e7a601b9fa5da09bdb (patch)
tree321dae1f145c84846b7c86392c42d13c53dfd4a5 /library/cpp
parentb3ffe62858ac089f6d0e24c6f8a527afa21db87d (diff)
downloadydb-f4d366e1882cfbae7ccda2e7a601b9fa5da09bdb.tar.gz
Fix bug in proto2json map empty keys serialization
`<library/cpp/protobuf/json/proto2json.h>` неправильно сериализует пустой ключ protobuf'ной map'ы ``` message TMyMessage { map<string, string> Fields = 1; } ``` При таком протобуфе ``` Fields { key: "" value: "1" } ``` Сейчас получается json ``` { "value": "1" } ``` Хотя должен получаться такой ``` { "": 1 } ``` commit_hash:e678bffbda1a062fa0fcaaba65c2e5f6bf13d558
Diffstat (limited to 'library/cpp')
-rw-r--r--library/cpp/protobuf/json/proto2json_printer.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/library/cpp/protobuf/json/proto2json_printer.cpp b/library/cpp/protobuf/json/proto2json_printer.cpp
index a9f8c3fce99..706b3b8c628 100644
--- a/library/cpp/protobuf/json/proto2json_printer.cpp
+++ b/library/cpp/protobuf/json/proto2json_printer.cpp
@@ -253,7 +253,7 @@ namespace NProtobufJson {
bool inProtoMap) {
Y_ABORT_UNLESS(!field.is_repeated(), "field is repeated.");
- if (!key) {
+ if (!key && !inProtoMap) {
key = MakeKey(field);
}