aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/client/mac/handler/minidump_generator.cc4
-rw-r--r--src/google_breakpad/common/minidump_format.h1
-rw-r--r--src/processor/exploitability.cc1
-rw-r--r--src/processor/minidump.cc5
-rw-r--r--src/processor/minidump_processor.cc8
5 files changed, 18 insertions, 1 deletions
diff --git a/src/client/mac/handler/minidump_generator.cc b/src/client/mac/handler/minidump_generator.cc
index b0eb7b7c..05ee8312 100644
--- a/src/client/mac/handler/minidump_generator.cc
+++ b/src/client/mac/handler/minidump_generator.cc
@@ -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;
diff --git a/src/google_breakpad/common/minidump_format.h b/src/google_breakpad/common/minidump_format.h
index 6c051305..a92007a5 100644
--- a/src/google_breakpad/common/minidump_format.h
+++ b/src/google_breakpad/common/minidump_format.h
@@ -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;
diff --git a/src/processor/exploitability.cc b/src/processor/exploitability.cc
index d8821d4b..eb0b4d35 100644
--- a/src/processor/exploitability.cc
+++ b/src/processor/exploitability.cc
@@ -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:
diff --git a/src/processor/minidump.cc b/src/processor/minidump.cc
index 331ebd9e..34ca7dce 100644
--- a/src/processor/minidump.cc
+++ b/src/processor/minidump.cc
@@ -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;
diff --git a/src/processor/minidump_processor.cc b/src/processor/minidump_processor.cc
index a74db327..810fa117 100644
--- a/src/processor/minidump_processor.cc
+++ b/src/processor/minidump_processor.cc
@@ -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) {