forked from chromium/chromium
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Crashpad!: Use the Crashpad client instead of Breakpad on Mac OS X.
Crashpad is always compiled in to Chrome and its handler is always enabled. It is only possible to enable uploads in official builds. Crashpad talks to the existing Breakpad server. There should be no noticeable changes to crash reporting on the server side, except the client IDs will all change to a new ID and will no longer be synchronized with UMA client IDs. This is a one-time change. After this, the client ID will remain stable within a single --user-data-dir. BUG=386208,390217,415547,427611,crashpad:12 R=rsesek@chromium.org TBR=cpu@chromium.org,jochen@chromium.org Review URL: https://codereview.chromium.org/1001103002 Cr-Commit-Position: refs/heads/master@{#320466}
- Loading branch information
1 parent
ec163e2
commit d413b2d
Showing
33 changed files
with
551 additions
and
148 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
// Copyright 2015 The Chromium Authors. All rights reserved. | ||
// Use of this source code is governed by a BSD-style license that can be | ||
// found in the LICENSE file. | ||
|
||
#include "chrome/browser/crash_upload_list_mac.h" | ||
|
||
#include "base/time/time.h" | ||
#include "components/crash/app/crashpad_mac.h" | ||
|
||
CrashUploadListMac::CrashUploadListMac(Delegate* delegate, | ||
const base::FilePath& upload_log_path) | ||
: CrashUploadList(delegate, upload_log_path) { | ||
} | ||
|
||
CrashUploadListMac::~CrashUploadListMac() { | ||
} | ||
|
||
void CrashUploadListMac::LoadUploadList() { | ||
std::vector<crash_reporter::UploadedReport> uploaded_reports; | ||
crash_reporter::GetUploadedReports(&uploaded_reports); | ||
|
||
ClearUploads(); | ||
for (const crash_reporter::UploadedReport& uploaded_report : | ||
uploaded_reports) { | ||
AppendUploadInfo( | ||
UploadInfo(uploaded_report.remote_id, | ||
base::Time::FromTimeT(uploaded_report.creation_time), | ||
uploaded_report.local_id)); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
// Copyright 2015 The Chromium Authors. All rights reserved. | ||
// Use of this source code is governed by a BSD-style license that can be | ||
// found in the LICENSE file. | ||
|
||
#ifndef CHROME_BROWSER_CRASH_UPLOAD_LIST_MAC_H_ | ||
#define CHROME_BROWSER_CRASH_UPLOAD_LIST_MAC_H_ | ||
|
||
#include "chrome/browser/crash_upload_list.h" | ||
|
||
#include "base/basictypes.h" | ||
#include "base/files/file_path.h" | ||
|
||
// A CrashUploadList that retrieves the list of uploaded reports from the | ||
// Crashpad database. | ||
class CrashUploadListMac : public CrashUploadList { | ||
public: | ||
// The |upload_log_path| argument is unused. It is only accepted because the | ||
// base class constructor requires it, although it is entirely unused with | ||
// LoadUploadList() being overridden. | ||
CrashUploadListMac(Delegate* delegate, const base::FilePath& upload_log_path); | ||
|
||
protected: | ||
~CrashUploadListMac() override; | ||
|
||
// Called on a blocking pool thread. | ||
void LoadUploadList() override; | ||
|
||
DISALLOW_COPY_AND_ASSIGN(CrashUploadListMac); | ||
}; | ||
|
||
#endif // CHROME_BROWSER_CRASH_UPLOAD_LIST_MAC_H_ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.