From dbe50ca0e5509e82e68b88afc49191caa1484f30 Mon Sep 17 00:00:00 2001 From: Yi Fan Date: Mon, 12 Aug 2019 23:12:07 +0000 Subject: [PATCH] log attachment file size To check whether dump file size is too big to be uploaded. Bug: b/130366217 Test: build and run; file feedback and check logcat Change-Id: I12ddd67a48255319b31725b36f9c28285465f233 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1625899 Reviewed-by: Yuchen Liu Commit-Queue: Yi Fan Cr-Commit-Position: refs/heads/master@{#686233} --- chromecast/crash/cast_crashdump_uploader.cc | 8 ++++++++ chromecast/crash/cast_crashdump_uploader_unittest.cc | 6 +----- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/chromecast/crash/cast_crashdump_uploader.cc b/chromecast/crash/cast_crashdump_uploader.cc index d9a55440cd1fa6..3a278f8c51594b 100644 --- a/chromecast/crash/cast_crashdump_uploader.cc +++ b/chromecast/crash/cast_crashdump_uploader.cc @@ -6,6 +6,8 @@ #include +#include "base/files/file_path.h" +#include "base/files/file_util.h" #include "base/logging.h" // TODO(slan): Find a replacement for LibcurlWrapper in Chromium to remove the // breakpad dependency. @@ -51,6 +53,12 @@ CastCrashdumpUploader::~CastCrashdumpUploader() { bool CastCrashdumpUploader::AddAttachment(const std::string& label, const std::string& filename) { + int64_t file_size = 0; + if (!base::GetFileSize(base::FilePath(filename), &file_size)) { + LOG(WARNING) << "file size of " << filename << " not readable"; + return false; + } + LOG(INFO) << "file size of " << filename << ": " << file_size; attachments_[label] = filename; return true; } diff --git a/chromecast/crash/cast_crashdump_uploader_unittest.cc b/chromecast/crash/cast_crashdump_uploader_unittest.cc index a2593b760389c0..941cce26bab36c 100644 --- a/chromecast/crash/cast_crashdump_uploader_unittest.cc +++ b/chromecast/crash/cast_crashdump_uploader_unittest.cc @@ -138,9 +138,6 @@ TEST(CastCrashdumpUploaderTest, UploadFailsWithInvalidAttachment) { // Create a temporary file. ScopedTempFile minidump; - EXPECT_CALL(*m, Init()).Times(1).WillOnce(Return(true)); - EXPECT_CALL(*m, AddFile(minidump.path().value(), _)).WillOnce(Return(true)); - CastCrashdumpData data; data.product = "foobar"; data.version = "1.0"; @@ -152,8 +149,7 @@ TEST(CastCrashdumpUploaderTest, UploadFailsWithInvalidAttachment) { CastCrashdumpUploader uploader(data, std::move(m)); // Add a file that does not exist as an attachment. - uploader.AddAttachment("label", "/path/does/not/exist"); - ASSERT_FALSE(uploader.Upload(nullptr)); + ASSERT_FALSE(uploader.AddAttachment("label", "/path/does/not/exist")); } TEST(CastCrashdumpUploaderTest, UploadSucceedsWithValidAttachment) {