Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(377)

Unified Diff: third_party/crashpad/crashpad/client/crash_report_database.h

Issue 2277943002: Update Crashpad to b35ee1fca18956f3c27ba124d6dc456a723c7670 (Closed)
Patch Set: fix build.gn Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/crashpad/crashpad/client/crash_report_database.h
diff --git a/third_party/crashpad/crashpad/client/crash_report_database.h b/third_party/crashpad/crashpad/client/crash_report_database.h
index 63501e0cf8bac506a76069ace33941ae1648c75c..7fef8a2ec89d1c2c9a6d55dd2de9e85601266a5f 100644
--- a/third_party/crashpad/crashpad/client/crash_report_database.h
+++ b/third_party/crashpad/crashpad/client/crash_report_database.h
@@ -43,7 +43,8 @@ class Settings;
//! the client then writes the report, and then calls
//! FinishedWritingCrashReport() to make the report Pending.
//! 2. Pending: The report has been written but has not been locally
-//! processed.
+//! processed, or it was has been brought back from 'Completed' state by
+//! user request.
//! 3. Completed: The report has been locally processed, either by uploading
//! it to a collection server and calling RecordUploadAttempt(), or by
//! calling SkipReportUpload().
@@ -88,6 +89,10 @@ class CrashReportDatabase {
//! #last_upload_attempt_time will be set to the timestamp of the most
//! recent attempt.
int upload_attempts;
+
+ //! Whether this crash report was explicitly requested by user to be
+ //! uploaded. This can be true only if report is in the 'pending' state.
+ bool upload_explicitly_requested;
};
//! \brief A crash report that is in the process of being written.
@@ -161,6 +166,10 @@ class CrashReportDatabase {
//! \brief The operation could not be completed because a concurrent
//! operation affecting the report is occurring.
kBusyError,
+
+ //! \brief The report cannot be uploaded by user request as it has already
+ //! been uploaded.
+ kCannotRequestUpload,
};
virtual ~CrashReportDatabase() {}
@@ -328,6 +337,14 @@ class CrashReportDatabase {
//! \return The operation status code.
virtual OperationStatus DeleteReport(const UUID& uuid) = 0;
+ //! \brief Marks a crash report as explicitly requested to be uploaded by the
+ //! user and moves it to 'pending' state.
+ //!
+ //! \param[in] uuid The unique identifier for the crash report record.
+ //!
+ //! \return The operation status code.
+ virtual OperationStatus RequestUpload(const UUID& uuid) = 0;
+
protected:
CrashReportDatabase() {}

Powered by Google App Engine
This is Rietveld 408576698