Add the capability to include an arbitrary data stream within minidumps

This is supplied via a custom field "custom-data-stream"
Review URL: https://breakpad.appspot.com/408002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@984 4c0a9323-5329-0410-9bdc-e9ce6186880e
This commit is contained in:
cdn@chromium.org
2012-07-10 18:52:07 +00:00
parent 0bed408b15
commit e05aab7b6b
8 changed files with 108 additions and 12 deletions

View File

@@ -61,6 +61,7 @@ class ClientInfo {
MINIDUMP_TYPE dump_type() const { return dump_type_; }
EXCEPTION_POINTERS** ex_info() const { return ex_info_; }
MDRawAssertionInfo* assert_info() const { return assert_info_; }
CustomDataStream* custom_data_stream() const { return custom_data_stream_; }
DWORD* thread_id() const { return thread_id_; }
HANDLE process_handle() const { return process_handle_; }
HANDLE dump_requested_handle() const { return dump_requested_handle_; }
@@ -90,6 +91,10 @@ class ClientInfo {
bool GetClientExceptionInfo(EXCEPTION_POINTERS** ex_info) const;
bool GetClientThreadId(DWORD* thread_id) const;
// Reads the custom data stream (if supplied) from the client process
// address space.
bool PopulateCustomDataStream();
// Reads the custom information from the client process address space.
bool PopulateCustomInfo();
@@ -130,6 +135,9 @@ class ClientInfo {
// Custom information about the client.
CustomClientInfo custom_client_info_;
// Custom data stream supplied by the client.
CustomDataStream* custom_data_stream_;
// Contains the custom client info entries read from the client process
// memory. This will be populated only if the method GetClientCustomInfo
// is called.