| Index: snapshot/win/exception_snapshot_win.cc
|
| diff --git a/snapshot/win/exception_snapshot_win.cc b/snapshot/win/exception_snapshot_win.cc
|
| index 07b1c8eaae1d139fdca8ce6add3db8100242ef1e..89233d5a0fe6b9bc32381c3f3af446012c6ba445 100644
|
| --- a/snapshot/win/exception_snapshot_win.cc
|
| +++ b/snapshot/win/exception_snapshot_win.cc
|
| @@ -14,7 +14,10 @@
|
|
|
| #include "snapshot/win/exception_snapshot_win.h"
|
|
|
| +#include "snapshot/memory_snapshot.h"
|
| +#include "snapshot/win/capture_context_memory.h"
|
| #include "snapshot/win/cpu_context_win.h"
|
| +#include "snapshot/win/memory_snapshot_win.h"
|
| #include "snapshot/win/process_reader_win.h"
|
| #include "util/win/nt_internals.h"
|
|
|
| @@ -86,6 +89,8 @@ bool ExceptionSnapshotWin::Initialize(ProcessReaderWin* process_reader,
|
| InitializeX86Context(context_record, context_.x86);
|
| }
|
|
|
| + CaptureMemoryPointedToByContext(context_, process_reader, &extra_memory_);
|
| +
|
| INITIALIZATION_STATE_SET_VALID(initialized_);
|
| return true;
|
| }
|
| @@ -120,6 +125,15 @@ const std::vector<uint64_t>& ExceptionSnapshotWin::Codes() const {
|
| return codes_;
|
| }
|
|
|
| +std::vector<const MemorySnapshot*> ExceptionSnapshotWin::ExtraMemory() const {
|
| + INITIALIZATION_STATE_DCHECK_VALID(initialized_);
|
| + std::vector<const MemorySnapshot*> result;
|
| + result.reserve(extra_memory_.size());
|
| + for (const auto& em : extra_memory_)
|
| + result.push_back(em);
|
| + return result;
|
| +}
|
| +
|
| template <class ExceptionRecordType,
|
| class ExceptionPointersType,
|
| class ContextType>
|
|
|