Extract the exception record from the minidump

Change-Id: Ia622560960513e24b21184532f2272a09b9cdc95
Reviewed-on: 1986339
Reviewed-by: Ivan Penkov <ivanpe@chromium.org>
This commit is contained in:
Joshua Peraza 2020-01-03 12:00:23 -08:00
parent e5ef907c2e
commit 4e15f7d230
3 changed files with 148 additions and 0 deletions

View file

@ -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.