Use FilePath for crash reporter temp directory

This commit is contained in:
Kevin Sawicki 2016-10-05 16:40:19 -07:00
parent 883c4b63d0
commit 9d1d1f21e9
8 changed files with 27 additions and 26 deletions

View file

@ -25,19 +25,19 @@ CrashReporter::~CrashReporter() {
void CrashReporter::Start(const std::string& product_name,
const std::string& company_name,
const std::string& submit_url,
const std::string& temp_dir,
const base::FilePath& temp_path,
bool auto_submit,
bool skip_system_crash_handler,
const StringMap& extra_parameters) {
SetUploadParameters(extra_parameters);
InitBreakpad(product_name, ATOM_VERSION_STRING, company_name, submit_url,
temp_dir, auto_submit, skip_system_crash_handler);
temp_path, auto_submit, skip_system_crash_handler);
}
base::FilePath CrashReporter::GetCrashesDirectory(
const std::string& product_name, const std::string& temp_dir) {
return base::FilePath(temp_dir).Append(product_name + " Crashes");
const std::string& product_name, const base::FilePath& temp_path) {
return temp_path.Append(product_name + " Crashes");
}
void CrashReporter::SetUploadParameters(const StringMap& parameters) {
@ -50,11 +50,12 @@ void CrashReporter::SetUploadParameters(const StringMap& parameters) {
std::vector<CrashReporter::UploadReportResult>
CrashReporter::GetUploadedReports(const std::string& product_name,
const std::string& temp_dir) {
const base::FilePath& temp_path) {
std::vector<CrashReporter::UploadReportResult> result;
base::FilePath uploads_path =
GetCrashesDirectory(product_name, temp_dir).Append("uploads.log");
GetCrashesDirectory(product_name, temp_path)
.Append(FILE_PATH_LITERAL("uploads.log"));
std::string file_content;
if (base::ReadFileToString(uploads_path, &file_content)) {
std::vector<std::string> reports = base::SplitString(
@ -77,7 +78,7 @@ void CrashReporter::InitBreakpad(const std::string& product_name,
const std::string& version,
const std::string& company_name,
const std::string& submit_url,
const std::string& temp_dir,
const base::FilePath& temp_path,
bool auto_submit,
bool skip_system_crash_handler) {
}

View file

@ -25,17 +25,17 @@ class CrashReporter {
void Start(const std::string& product_name,
const std::string& company_name,
const std::string& submit_url,
const std::string& temp_dir,
const base::FilePath& temp_path,
bool auto_submit,
bool skip_system_crash_handler,
const StringMap& extra_parameters);
virtual std::vector<CrashReporter::UploadReportResult> GetUploadedReports(
const std::string& product_name,
const std::string& temp_dir);
const base::FilePath& temp_path);
base::FilePath GetCrashesDirectory(const std::string& product_name,
const std::string& temp_dir);
const base::FilePath& temp_path);
protected:
CrashReporter();
@ -45,7 +45,7 @@ class CrashReporter {
const std::string& version,
const std::string& company_name,
const std::string& submit_url,
const std::string& temp_dir,
const base::FilePath& temp_path,
bool auto_submit,
bool skip_system_crash_handler);
virtual void SetUploadParameters();

View file

@ -60,10 +60,10 @@ void CrashReporterLinux::InitBreakpad(const std::string& product_name,
const std::string& version,
const std::string& company_name,
const std::string& submit_url,
const std::string& temp_dir,
const base::FilePath& temp_path,
bool auto_submit,
bool skip_system_crash_handler) {
EnableCrashDumping(product_name, temp_dir);
EnableCrashDumping(product_name, temp_path);
crash_keys_.SetKeyValue("prod", ATOM_PRODUCT_NAME);
crash_keys_.SetKeyValue("ver", version.c_str());
@ -79,8 +79,8 @@ void CrashReporterLinux::SetUploadParameters() {
}
void CrashReporterLinux::EnableCrashDumping(const std::string& product_name,
const std::string& temp_dir) {
base::FilePath dumps_path = GetCrashesDirectory(product_name, temp_dir);
const base::FilePath& temp_path) {
base::FilePath dumps_path = GetCrashesDirectory(product_name, temp_path);
base::CreateDirectory(dumps_path);
std::string log_file = base::StringPrintf(

View file

@ -31,7 +31,7 @@ class CrashReporterLinux : public CrashReporter {
const std::string& version,
const std::string& company_name,
const std::string& submit_url,
const std::string& temp_dir,
const base::FilePath& temp_path,
bool auto_submit,
bool skip_system_crash_handler) override;
void SetUploadParameters() override;
@ -43,7 +43,7 @@ class CrashReporterLinux : public CrashReporter {
virtual ~CrashReporterLinux();
void EnableCrashDumping(const std::string& product_name,
const std::string& temp_dir);
const base::FilePath& temp_path);
static bool CrashDone(const google_breakpad::MinidumpDescriptor& minidump,
void* context,

View file

@ -27,7 +27,7 @@ class CrashReporterMac : public CrashReporter {
const std::string& version,
const std::string& company_name,
const std::string& submit_url,
const std::string& temp_dir,
const base::FilePath& temp_path,
bool auto_submit,
bool skip_system_crash_handler) override;
void SetUploadParameters() override;
@ -43,7 +43,7 @@ class CrashReporterMac : public CrashReporter {
const base::StringPiece& value);
std::vector<UploadReportResult> GetUploadedReports(
const std::string& path, const std::string& temp_dir) override;
const std::string& path, const base::FilePath& temp_path) override;
std::unique_ptr<crashpad::SimpleStringDictionary> simple_string_dictionary_;

View file

@ -31,7 +31,7 @@ void CrashReporterMac::InitBreakpad(const std::string& product_name,
const std::string& version,
const std::string& company_name,
const std::string& submit_url,
const std::string& temp_dir,
const base::FilePath& temp_path,
bool auto_submit,
bool skip_system_crash_handler) {
// check whether crashpad has been initialized.
@ -39,7 +39,7 @@ void CrashReporterMac::InitBreakpad(const std::string& product_name,
if (simple_string_dictionary_)
return;
base::FilePath database_path = GetCrashesDirectory(product_name, temp_dir);
base::FilePath database_path = GetCrashesDirectory(product_name, temp_path);
if (is_browser_) {
@autoreleasepool {
base::FilePath framework_bundle_path = base::mac::FrameworkBundlePath();
@ -94,10 +94,10 @@ void CrashReporterMac::SetCrashKeyValue(const base::StringPiece& key,
std::vector<CrashReporter::UploadReportResult>
CrashReporterMac::GetUploadedReports(const std::string& product_name,
const std::string& temp_dir) {
const base::FilePath& temp_path) {
std::vector<CrashReporter::UploadReportResult> uploaded_reports;
base::FilePath file_path = GetCrashesDirectory(product_name, temp_dir);
base::FilePath file_path = GetCrashesDirectory(product_name, temp_path);
if (!base::PathExists(file_path)) {
return uploaded_reports;
}

View file

@ -149,7 +149,7 @@ void CrashReporterWin::InitBreakpad(const std::string& product_name,
const std::string& version,
const std::string& company_name,
const std::string& submit_url,
const std::string& temp_dir,
const base::FilePath& temp_path,
bool auto_submit,
bool skip_system_crash_handler) {
skip_system_crash_handler_ = skip_system_crash_handler;
@ -172,7 +172,7 @@ void CrashReporterWin::InitBreakpad(const std::string& product_name,
breakpad_.reset();
breakpad_.reset(new google_breakpad::ExceptionHandler(
temp_dir,
temp_path.value(),
FilterCallback,
MinidumpCallback,
this,

View file

@ -27,7 +27,7 @@ class CrashReporterWin : public CrashReporter {
const std::string& version,
const std::string& company_name,
const std::string& submit_url,
const std::string& temp_dir,
const base::FilePath& temp_path,
bool auto_submit,
bool skip_system_crash_handler) override;
void SetUploadParameters() override;