Index: src/processor/minidump_processor.cc |
=================================================================== |
--- src/processor/minidump_processor.cc (revision 682) |
+++ src/processor/minidump_processor.cc (working copy) |
@@ -96,8 +96,8 @@ |
dump, &process_state->crash_address_); |
} |
- // This will just return an empty string if it doesn't exist. |
- process_state->assertion_ = GetAssertion(dump); |
+ // This will just return an empty string if it doesn't exist. |
+ process_state->assertion_ = GetAssertion(dump); |
MinidumpModuleList *module_list = dump->GetModuleList(); |
@@ -267,7 +267,7 @@ |
if (!dump.Read()) { |
BPLOG(ERROR) << "Minidump " << dump.path() << " could not be read"; |
return PROCESS_ERROR_MINIDUMP_NOT_FOUND; |
- } |
+ } |
return Process(&dump, process_state); |
} |
@@ -730,14 +730,17 @@ |
// This information is useful in addition to the code address, which |
// will be present in the crash thread's instruction field anyway. |
if (raw_exception->exception_record.number_parameters >= 1) { |
- switch (raw_exception->exception_record.exception_information[0]) { |
- case 0: |
+ MDAccessViolationTypeWin av_type = |
+ static_cast<MDAccessViolationTypeWin> |
+ (raw_exception->exception_record.exception_information[0]); |
+ switch (av_type) { |
+ case MD_ACCESS_VIOLATION_WIN_READ: |
reason = "EXCEPTION_ACCESS_VIOLATION_READ"; |
break; |
- case 1: |
+ case MD_ACCESS_VIOLATION_WIN_WRITE: |
reason = "EXCEPTION_ACCESS_VIOLATION_WRITE"; |
break; |
- case 8: |
+ case MD_ACCESS_VIOLATION_WIN_EXEC: |
reason = "EXCEPTION_ACCESS_VIOLATION_EXEC"; |
break; |
default: |
@@ -814,8 +817,8 @@ |
reason = "EXCEPTION_HEAP_CORRUPTION"; |
break; |
case MD_EXCEPTION_CODE_WIN_UNHANDLED_CPP_EXCEPTION: |
- reason = "Unhandled C++ Exception"; |
- break; |
+ reason = "Unhandled C++ Exception"; |
+ break; |
default: |
BPLOG(INFO) << "Unknown exception reason " << reason; |
break; |
@@ -1064,8 +1067,7 @@ |
} |
// static |
-string MinidumpProcessor::GetAssertion(Minidump *dump) |
-{ |
+string MinidumpProcessor::GetAssertion(Minidump *dump) { |
MinidumpAssertion *assertion = dump->GetAssertion(); |
if (!assertion) |
return ""; |