From 082f88d242179ca21b6238ef0920450336aa95ba Mon Sep 17 00:00:00 2001 From: Martin Michelsen Date: Wed, 24 Jan 2024 21:03:48 -0800 Subject: [PATCH] use ESCAPE_CONTROLS_ONLY when writing JSON --- src/Episode3/Tournament.cc | 2 +- src/Main.cc | 4 ++-- src/TeamIndex.cc | 2 +- src/WordSelectTable.cc | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Episode3/Tournament.cc b/src/Episode3/Tournament.cc index 2a3a03d3..6279c9f2 100644 --- a/src/Episode3/Tournament.cc +++ b/src/Episode3/Tournament.cc @@ -842,7 +842,7 @@ void TournamentIndex::save() const { for (const auto& it : this->name_to_tournament) { json.emplace(it.second->get_name(), it.second->json()); } - save_file(this->state_filename, json.serialize(JSON::SerializeOption::FORMAT | JSON::SerializeOption::HEX_INTEGERS)); + save_file(this->state_filename, json.serialize(JSON::SerializeOption::FORMAT | JSON::SerializeOption::HEX_INTEGERS | JSON::SerializeOption::ESCAPE_CONTROLS_ONLY)); } shared_ptr TournamentIndex::create_tournament( diff --git a/src/Main.cc b/src/Main.cc index e450bea7..7886afe3 100644 --- a/src/Main.cc +++ b/src/Main.cc @@ -1462,7 +1462,7 @@ Action a_decode_text_archive( ts = make_unique(data, args.get("big-endian")); } JSON j = ts->json(); - string out_data = j.serialize(JSON::SerializeOption::FORMAT); + string out_data = j.serialize(JSON::SerializeOption::FORMAT | JSON::SerializeOption::ESCAPE_CONTROLS_ONLY); write_output_data(args, out_data.data(), out_data.size(), "json"); }); Action a_encode_text_archive( @@ -1501,7 +1501,7 @@ Action a_decode_unicode_text_set( "decode-unicode-text-set", nullptr, +[](Arguments& args) { UnicodeTextSet uts(read_input_data(args)); JSON j = uts.json(); - string out_data = j.serialize(JSON::SerializeOption::FORMAT); + string out_data = j.serialize(JSON::SerializeOption::FORMAT | JSON::SerializeOption::ESCAPE_CONTROLS_ONLY); write_output_data(args, out_data.data(), out_data.size(), "json"); }); Action a_encode_unicode_text_set( diff --git a/src/TeamIndex.cc b/src/TeamIndex.cc index 5d606978..159791ef 100644 --- a/src/TeamIndex.cc +++ b/src/TeamIndex.cc @@ -88,7 +88,7 @@ void TeamIndex::Team::save_config() const { {"RewardKeys", std::move(reward_keys_json)}, {"RewardFlags", this->reward_flags}, }); - save_file(this->json_filename(), root.serialize(JSON::SerializeOption::FORMAT | JSON::SerializeOption::HEX_INTEGERS)); + save_file(this->json_filename(), root.serialize(JSON::SerializeOption::FORMAT | JSON::SerializeOption::HEX_INTEGERS | JSON::SerializeOption::ESCAPE_CONTROLS_ONLY)); } void TeamIndex::Team::load_flag() { diff --git a/src/WordSelectTable.cc b/src/WordSelectTable.cc index 4cf76c12..b735c055 100644 --- a/src/WordSelectTable.cc +++ b/src/WordSelectTable.cc @@ -256,7 +256,7 @@ void WordSelectTable::print(FILE* stream) const { fprintf(stream, "%04hX ", token->values_by_version[z]); } } - string serialized = JSON(token->canonical_name).serialize(); + string serialized = JSON(token->canonical_name).serialize(JSON::SerializeOption::ESCAPE_CONTROLS_ONLY); fprintf(stream, "%s\n", serialized.c_str()); } } @@ -274,7 +274,7 @@ void WordSelectTable::print_index(FILE* stream, Version v) const { fprintf(stream, "%04hX ", token->values_by_version[z]); } } - string serialized = JSON(token->canonical_name).serialize(); + string serialized = JSON(token->canonical_name).serialize(JSON::SerializeOption::ESCAPE_CONTROLS_ONLY); fprintf(stream, "%s\n", serialized.c_str()); } }