AU: Include the manifest size in the delta payload usage report.
BUG=none
TEST=generated delta reports
Change-Id: I515953377757616ced2c2520396bab88e59b4474
Review URL: http://codereview.chromium.org/3707006
diff --git a/delta_diff_generator.cc b/delta_diff_generator.cc
index 4b3ad95..c330f6c 100644
--- a/delta_diff_generator.cc
+++ b/delta_diff_generator.cc
@@ -464,7 +464,8 @@
};
void ReportPayloadUsage(const Graph& graph,
- const DeltaArchiveManifest& manifest) {
+ const DeltaArchiveManifest& manifest,
+ const int64_t manifest_metadata_size) {
vector<DeltaObject> objects;
off_t total_size = 0;
@@ -490,6 +491,11 @@
total_size += op.data_length();
}
+ objects.push_back(DeltaObject("<manifest-metadata>",
+ -1,
+ manifest_metadata_size));
+ total_size += manifest_metadata_size;
+
std::sort(objects.begin(), objects.end());
static const char kFormatString[] = "%6.2f%% %10llu %-10s %s\n";
@@ -499,7 +505,7 @@
fprintf(stderr, kFormatString,
object.size * 100.0 / total_size,
object.size,
- kInstallOperationTypes[object.type],
+ object.type >= 0 ? kInstallOperationTypes[object.type] : "-",
object.name.c_str());
}
fprintf(stderr, kFormatString, 100.0, total_size, "", "<total>");
@@ -1482,7 +1488,9 @@
static_cast<ssize_t>(signature_blob.size()));
}
- ReportPayloadUsage(graph, manifest);
+ int64_t manifest_metadata_size =
+ strlen(kDeltaMagic) + 2 * sizeof(uint64_t) + serialized_manifest.size();
+ ReportPayloadUsage(graph, manifest, manifest_metadata_size);
LOG(INFO) << "All done. Successfully created delta file.";
return true;