diff options
author | ted.mielczarek <ted.mielczarek@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2010-12-13 22:10:23 +0000 |
---|---|---|
committer | ted.mielczarek <ted.mielczarek@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2010-12-13 22:10:23 +0000 |
commit | ef7262d4775bf6de750bc2a26dbf98368d7ec0c3 (patch) | |
tree | a85d6b8c2b66f2da9fdbef3fd0a936dd7f566ac4 /src/client/linux/minidump_writer/minidump_writer.h | |
parent | Reuse code and fix inconsistent array boundaries. (diff) | |
download | breakpad-ef7262d4775bf6de750bc2a26dbf98368d7ec0c3.tar.xz |
allow passing info about known memory mappings to MinidumpWriter and ExceptionHandler
r=thestig at http://breakpad.appspot.com/242001/show
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@741 4c0a9323-5329-0410-9bdc-e9ce6186880e
Diffstat (limited to 'src/client/linux/minidump_writer/minidump_writer.h')
-rw-r--r-- | src/client/linux/minidump_writer/minidump_writer.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/client/linux/minidump_writer/minidump_writer.h b/src/client/linux/minidump_writer/minidump_writer.h index 579f68cd..156ca35f 100644 --- a/src/client/linux/minidump_writer/minidump_writer.h +++ b/src/client/linux/minidump_writer/minidump_writer.h @@ -33,8 +33,17 @@ #include <stdint.h> #include <unistd.h> +#include <list> +#include <utility> + +#include "google_breakpad/common/minidump_format.h" + namespace google_breakpad { +// A list of <MappingInfo, GUID> +typedef std::pair<struct MappingInfo, u_int8_t[sizeof(MDGUID)]> MappingEntry; +typedef std::list<MappingEntry> MappingList; + // Write a minidump to the filesystem. This function does not malloc nor use // libc functions which may. Thus, it can be used in contexts where the state // of the heap may be corrupt. @@ -48,6 +57,11 @@ namespace google_breakpad { bool WriteMinidump(const char* filename, pid_t crashing_process, const void* blob, size_t blob_size); +// This overload also allows passing a list of known mappings. +bool WriteMinidump(const char* filename, pid_t crashing_process, + const void* blob, size_t blob_size, + const MappingList& mappings); + } // namespace google_breakpad #endif // CLIENT_LINUX_MINIDUMP_WRITER_MINIDUMP_WRITER_H_ |