diff options
author | digit@chromium.org <digit@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2012-07-04 11:56:26 +0000 |
---|---|---|
committer | digit@chromium.org <digit@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2012-07-04 11:56:26 +0000 |
commit | 8d96707553bb97c8a40e24921d4552d2d65efdba (patch) | |
tree | 8e0842c7896a042e7eb926bf81bce746575c5d7e /src/processor | |
parent | Do not fail crash dump generation if handle operations tracing is not enabled (diff) | |
download | breakpad-8d96707553bb97c8a40e24921d4552d2d65efdba.tar.xz |
Add MD_OS_ANDROID definition.
In order to better distinguish Android and Linux minidumps, introduce
a new MD_OS_ANDROID definition, and modify related source code accordingly.
Also append the build-fingerprint to the minidump location descriptor.
This gives more information about the system image the device runs on.
Review URL: https://breakpad.appspot.com/405002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@981 4c0a9323-5329-0410-9bdc-e9ce6186880e
Diffstat (limited to 'src/processor')
-rw-r--r-- | src/processor/exploitability.cc | 1 | ||||
-rw-r--r-- | src/processor/minidump.cc | 5 | ||||
-rw-r--r-- | src/processor/minidump_processor.cc | 6 |
3 files changed, 12 insertions, 0 deletions
diff --git a/src/processor/exploitability.cc b/src/processor/exploitability.cc index eb0b4d35..459e7ce1 100644 --- a/src/processor/exploitability.cc +++ b/src/processor/exploitability.cc @@ -79,6 +79,7 @@ Exploitability *Exploitability::ExploitabilityForPlatform( case MD_OS_LINUX: case MD_OS_UNIX: case MD_OS_SOLARIS: + case MD_OS_ANDROID: default: { platform_exploitability = NULL; break; diff --git a/src/processor/minidump.cc b/src/processor/minidump.cc index dd7358c0..d88101f6 100644 --- a/src/processor/minidump.cc +++ b/src/processor/minidump.cc @@ -1760,6 +1760,7 @@ string MinidumpModule::code_identifier() const { case MD_OS_MAC_OS_X: case MD_OS_IOS: case MD_OS_SOLARIS: + case MD_OS_ANDROID: case MD_OS_LINUX: { // TODO(mmentovai): support uuid extension if present, otherwise fall // back to version (from LC_ID_DYLIB?), otherwise fall back to something @@ -3108,6 +3109,10 @@ string MinidumpSystemInfo::GetOS() { os = "solaris"; break; + case MD_OS_ANDROID: + os = "android"; + break; + default: BPLOG(ERROR) << "MinidumpSystemInfo unknown OS for platform " << HexString(system_info_.platform_id); diff --git a/src/processor/minidump_processor.cc b/src/processor/minidump_processor.cc index 40b28735..6dbe81ec 100644 --- a/src/processor/minidump_processor.cc +++ b/src/processor/minidump_processor.cc @@ -401,6 +401,11 @@ bool MinidumpProcessor::GetOSInfo(Minidump *dump, SystemInfo *info) { break; } + case MD_OS_ANDROID: { + info->os = "Android"; + break; + } + default: { // Assign the numeric platform ID into the OS string. char os_string[11]; @@ -838,6 +843,7 @@ string MinidumpProcessor::GetCrashReason(Minidump *dump, u_int64_t *address) { break; } + case MD_OS_ANDROID: case MD_OS_LINUX: { switch (exception_code) { case MD_EXCEPTION_CODE_LIN_SIGHUP: |