Convert int to string for payload sizes

.. to handle larger values without overflowing.

Bug: 312749584
Test: m + atest

Change-Id: I25b46167d657835c565661837649841fafdd3a4f
diff --git a/payload_generator/payload_properties.cc b/payload_generator/payload_properties.cc
index bcf4fbd..d47c059 100644
--- a/payload_generator/payload_properties.cc
+++ b/payload_generator/payload_properties.cc
@@ -47,6 +47,10 @@
 // These are needed by the Nebraska and devserver.
 const char kPayloadPropertyJsonPayloadSize[] = "size";
 const char kPayloadPropertyJsonIsDelta[] = "is_delta";
+
+// These are JSON specific properties to handle 64-bit sizes (> 53-bits).
+const char kPayloadPropertyJsonMetadataSizeStr[] = "metadata_size_str";
+const char kPayloadPropertyJsonPayloadSizeStr[] = "size_str";
 }  // namespace
 
 PayloadProperties::PayloadProperties(const string& payload_path)
@@ -58,9 +62,13 @@
   base::DictionaryValue properties;
   properties.SetInteger(kPayloadPropertyJsonVersion, version_);
   properties.SetInteger(kPayloadPropertyJsonMetadataSize, metadata_size_);
+  properties.SetString(kPayloadPropertyJsonMetadataSizeStr,
+                       std::to_string(metadata_size_));
   properties.SetString(kPayloadPropertyJsonMetadataSignature,
                        metadata_signatures_);
   properties.SetInteger(kPayloadPropertyJsonPayloadSize, payload_size_);
+  properties.SetString(kPayloadPropertyJsonPayloadSizeStr,
+                       std::to_string(payload_size_));
   properties.SetString(kPayloadPropertyJsonPayloadHash, payload_hash_);
   properties.SetBoolean(kPayloadPropertyJsonIsDelta, is_delta_);