Workaround Mac arch issue
Temporarily works around an issue on Mac where the system version of NXGetLocalArchInfo is returning x86 information on x86_64 devices, which results in dump_syms failing on said devices. Instead, the Breakpad implementation of NXGetLocalArchInfo, which is meant for dump_syms_mac on Linux, will be used until the system version is fixed. Bug: 1242776 Change-Id: Id398338e580eb9c67c61f9f01670d2e7dbe86bea Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/3143524 Reviewed-by: Joshua Peraza <jperaza@chromium.org>
This commit is contained in:
parent
4722484bf6
commit
1e093103ca
1 changed files with 6 additions and 1 deletions
|
@ -130,7 +130,10 @@ const NXArchInfo* BreakpadGetArchInfoFromCpuType(cpu_type_t cpu_type,
|
||||||
|
|
||||||
} // namespace google_breakpad
|
} // namespace google_breakpad
|
||||||
|
|
||||||
#ifndef __APPLE__
|
// TODO(crbug.com/1242776): The "#ifndef __APPLE__" should be here, but the
|
||||||
|
// system version of NXGetLocalArchInfo returns incorrect information on
|
||||||
|
// x86_64 machines (treating them as just x86), so use the Breakpad version
|
||||||
|
// all the time for now.
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
enum Architecture {
|
enum Architecture {
|
||||||
|
@ -219,6 +222,8 @@ const NXArchInfo *NXGetLocalArchInfo(void) {
|
||||||
return &kKnownArchitectures[arch];
|
return &kKnownArchitectures[arch];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifndef __APPLE__
|
||||||
|
|
||||||
const NXArchInfo *NXGetArchInfoFromName(const char *name) {
|
const NXArchInfo *NXGetArchInfoFromName(const char *name) {
|
||||||
for (int arch = 0; arch < kNumArchitectures; ++arch) {
|
for (int arch = 0; arch < kNumArchitectures; ++arch) {
|
||||||
if (!strcmp(name, kKnownArchitectures[arch].name)) {
|
if (!strcmp(name, kKnownArchitectures[arch].name)) {
|
||||||
|
|
Loading…
Reference in a new issue