Handle ios dump.
This change add a flag for ios minidumps and allow handler to recognize it. It doesn't recognize arm specific exceptions that will be logged as unknown type. Review URL: http://breakpad.appspot.com/311002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@855 4c0a9323-5329-0410-9bdc-e9ce6186880e
This commit is contained in:
parent
9d4dcad18b
commit
b958379739
5 changed files with 18 additions and 1 deletions
|
@ -1099,7 +1099,11 @@ bool MinidumpGenerator::WriteSystemInfoStream(
|
|||
}
|
||||
|
||||
info_ptr->number_of_processors = number_of_processors;
|
||||
#if TARGET_OS_IPHONE
|
||||
info_ptr->platform_id = MD_OS_IOS;
|
||||
#else
|
||||
info_ptr->platform_id = MD_OS_MAC_OS_X;
|
||||
#endif // TARGET_OS_IPHONE
|
||||
|
||||
MDLocationDescriptor build_string_loc;
|
||||
|
||||
|
|
|
@ -609,6 +609,7 @@ typedef enum {
|
|||
/* The following values are Breakpad-defined. */
|
||||
MD_OS_UNIX = 0x8000, /* Generic Unix-ish */
|
||||
MD_OS_MAC_OS_X = 0x8101, /* Mac OS X/Darwin */
|
||||
MD_OS_IOS = 0x8102, /* iOS */
|
||||
MD_OS_LINUX = 0x8201, /* Linux */
|
||||
MD_OS_SOLARIS = 0x8202 /* Solaris */
|
||||
} MDOSPlatform;
|
||||
|
|
|
@ -75,6 +75,7 @@ Exploitability *Exploitability::ExploitabilityForPlatform(
|
|||
break;
|
||||
}
|
||||
case MD_OS_MAC_OS_X:
|
||||
case MD_OS_IOS:
|
||||
case MD_OS_LINUX:
|
||||
case MD_OS_UNIX:
|
||||
case MD_OS_SOLARIS:
|
||||
|
|
|
@ -1758,6 +1758,7 @@ string MinidumpModule::code_identifier() const {
|
|||
}
|
||||
|
||||
case MD_OS_MAC_OS_X:
|
||||
case MD_OS_IOS:
|
||||
case MD_OS_SOLARIS:
|
||||
case MD_OS_LINUX: {
|
||||
// TODO(mmentovai): support uuid extension if present, otherwise fall
|
||||
|
@ -3095,6 +3096,10 @@ string MinidumpSystemInfo::GetOS() {
|
|||
os = "mac";
|
||||
break;
|
||||
|
||||
case MD_OS_IOS:
|
||||
os = "ios";
|
||||
break;
|
||||
|
||||
case MD_OS_LINUX:
|
||||
os = "linux";
|
||||
break;
|
||||
|
|
|
@ -386,6 +386,11 @@ bool MinidumpProcessor::GetOSInfo(Minidump *dump, SystemInfo *info) {
|
|||
break;
|
||||
}
|
||||
|
||||
case MD_OS_IOS: {
|
||||
info->os = "iOS";
|
||||
break;
|
||||
}
|
||||
|
||||
case MD_OS_LINUX: {
|
||||
info->os = "Linux";
|
||||
break;
|
||||
|
@ -451,7 +456,8 @@ string MinidumpProcessor::GetCrashReason(Minidump *dump, u_int64_t *address) {
|
|||
return reason;
|
||||
|
||||
switch (raw_system_info->platform_id) {
|
||||
case MD_OS_MAC_OS_X: {
|
||||
case MD_OS_MAC_OS_X:
|
||||
case MD_OS_IOS: {
|
||||
char flags_string[11];
|
||||
snprintf(flags_string, sizeof(flags_string), "0x%08x", exception_flags);
|
||||
switch (exception_code) {
|
||||
|
|
Loading…
Reference in a new issue