| 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() {}
|
|
|
|
|