Index: snapshot/win/process_snapshot_win.h |
diff --git a/snapshot/win/process_snapshot_win.h b/snapshot/win/process_snapshot_win.h |
index bba9828f3a167398cdf6d8a9dd03ebdbf743cd24..8e493e65f63825907094ca34f33f1eaed9441d6c 100644 |
--- a/snapshot/win/process_snapshot_win.h |
+++ b/snapshot/win/process_snapshot_win.h |
@@ -40,6 +40,7 @@ |
#include "util/misc/initialization_state_dcheck.h" |
#include "util/misc/uuid.h" |
#include "util/win/address_types.h" |
+#include "util/win/process_structs.h" |
#include "util/stdlib/pointer_container.h" |
namespace crashpad { |
@@ -134,8 +135,20 @@ class ProcessSnapshotWin final : public ProcessSnapshot { |
// Initializes modules_ on behalf of Initialize(). |
void InitializeModules(); |
+ // Initializes peb_memory_ on behalf of Initialize(). |
+ template <class Traits> |
+ void InitializePebData(); |
+ |
+ internal::MemorySnapshotWin* CreateMemorySnapshot(WinVMAddress address, |
+ WinVMAddress size); |
+ template <class Traits> |
Mark Mentovai
2015/09/25 21:10:16
Blank line before this.
scottmg
2015/09/25 22:52:25
Done.
|
+ internal::MemorySnapshotWin* CreateMemorySnapshotForUNICODE_STRING( |
+ const process_types::UNICODE_STRING<Traits>& us) { |
+ return CreateMemorySnapshot(us.Buffer, us.MaximumLength); |
Mark Mentovai
2015/09/25 21:10:17
Length instead of MaximumLength? We don’t need to
scottmg
2015/09/25 22:52:25
Done. (Can't use us.Buffer[0] because it's Traits:
|
+ } |
+ |
internal::SystemSnapshotWin system_; |
- internal::MemorySnapshotWin peb_; |
+ PointerVector<internal::MemorySnapshotWin> peb_memory_; |
PointerVector<internal::ThreadSnapshotWin> threads_; |
PointerVector<internal::ModuleSnapshotWin> modules_; |
scoped_ptr<internal::ExceptionSnapshotWin> exception_; |