aboutsummaryrefslogtreecommitdiff
path: root/src/processor
diff options
context:
space:
mode:
authorJoshua Peraza <jperaza@chromium.org>2020-01-03 12:00:23 -0800
committerJoshua Peraza <jperaza@chromium.org>2020-01-03 20:47:38 +0000
commit4e15f7d2308444677a3b5ccb9207cebacfd8ba60 (patch)
tree6829845e097347dea976950cedd7012ddf1ccb42 /src/processor
parentios: build for arm64e (diff)
downloadbreakpad-4e15f7d2308444677a3b5ccb9207cebacfd8ba60.tar.xz
Extract the exception record from the minidump
Change-Id: Ia622560960513e24b21184532f2272a09b9cdc95 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1986339 Reviewed-by: Ivan Penkov <ivanpe@chromium.org>
Diffstat (limited to 'src/processor')
-rw-r--r--src/processor/minidump_processor.cc19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/processor/minidump_processor.cc b/src/processor/minidump_processor.cc
index b1ddbb82..4ea4cb70 100644
--- a/src/processor/minidump_processor.cc
+++ b/src/processor/minidump_processor.cc
@@ -116,6 +116,25 @@ ProcessResult MinidumpProcessor::Process(
process_state->crash_reason_ = GetCrashReason(
dump, &process_state->crash_address_);
+
+ process_state->exception_record_.set_code(
+ exception->exception()->exception_record.exception_code,
+ // TODO(ivanpe): Populate description.
+ /* description = */ "");
+ process_state->exception_record_.set_flags(
+ exception->exception()->exception_record.exception_flags,
+ // TODO(ivanpe): Populate description.
+ /* description = */ "");
+ process_state->exception_record_.set_nested_exception_record_address(
+ exception->exception()->exception_record.exception_record);
+ process_state->exception_record_.set_address(process_state->crash_address_);
+ for (uint32_t i = 0;
+ i < exception->exception()->exception_record.number_parameters; i++) {
+ process_state->exception_record_.add_parameter(
+ exception->exception()->exception_record.exception_information[i],
+ // TODO(ivanpe): Populate description.
+ /* description = */ "");
+ }
}
// This will just return an empty string if it doesn't exist.