Commit 3cbe45a4 authored by boscosiu's avatar boscosiu Committed by Adam Cozzette

JSON string output funtions should clear() the destination first

Make the JSON util string output functions match the Message::SerializeToString() behavior.  This is helpful when packing the output into string fields of reused protobuf messages.
parent 6153f808
......@@ -115,6 +115,7 @@ util::Status BinaryToJsonString(TypeResolver* resolver,
const std::string& binary_input,
std::string* json_output,
const JsonPrintOptions& options) {
json_output->clear();
io::ArrayInputStream input_stream(binary_input.data(), binary_input.size());
io::StringOutputStream output_stream(json_output);
return BinaryToJsonStream(resolver, type_url, &input_stream, &output_stream,
......@@ -209,6 +210,7 @@ util::Status JsonToBinaryString(TypeResolver* resolver,
StringPiece json_input,
std::string* binary_output,
const JsonParseOptions& options) {
binary_output->clear();
io::ArrayInputStream input_stream(json_input.data(), json_input.size());
io::StringOutputStream output_stream(binary_output);
return JsonToBinaryStream(resolver, type_url, &input_stream, &output_stream,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment