Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(171)

Unified Diff: snapshot/win/exception_snapshot_win.h

Issue 1349313003: win: support x64 reading x86 (wow64) (Closed) Base URL: https://chromium.googlesource.com/crashpad/crashpad@master
Patch Set: . Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: snapshot/win/exception_snapshot_win.h
diff --git a/snapshot/win/exception_snapshot_win.h b/snapshot/win/exception_snapshot_win.h
index 277cd4a5117eb23ddea04d1f6926245cb34441fa..e5dc1fa777a8eae68b67fc01e527225486352880 100644
--- a/snapshot/win/exception_snapshot_win.h
+++ b/snapshot/win/exception_snapshot_win.h
@@ -24,6 +24,7 @@
#include "snapshot/exception_snapshot.h"
#include "util/misc/initialization_state_dcheck.h"
#include "util/win/address_types.h"
+#include "util/win/process_structs.h"
namespace crashpad {
@@ -61,12 +62,25 @@ class ExceptionSnapshotWin final : public ExceptionSnapshot {
const std::vector<uint64_t>& Codes() const override;
private:
- template <class ExceptionRecordType, class ContextType>
+ template <class ExceptionRecordType,
+ class ExceptionPointersType,
+ class ContextType>
bool InitializeFromExceptionPointers(
const ProcessReaderWin& process_reader,
- const EXCEPTION_POINTERS& exception_pointers,
+ const ExceptionPointersType& exception_pointers,
ContextType* context_record);
+ template <class ContextRecordType>
+ bool CommonX86Initialize(
+ const ProcessReaderWin& process_reader,
+ const process_types::EXCEPTION_POINTERS<
+ process_types::internal::Traits32>& exception_pointers);
+
+ template <class ExceptionPointersType>
+ bool ReadExceptionPointers(const ProcessReaderWin& process_reader,
+ WinVMAddress exception_pointers_address,
+ ExceptionPointersType* exception_pointers);
+
#if defined(ARCH_CPU_X86_FAMILY)
union {
CPUContextX86 x86;

Powered by Google App Engine
This is Rietveld 408576698