Commit f8581fc6 authored by Gabriele Svelto's avatar Gabriele Svelto
Browse files

Bug 1599449 - Add bug 1371390 to the breakpad patches we apply locally to...

Bug 1599449 - Add bug 1371390 to the breakpad patches we apply locally to prevent updates from clobbering it r=froydnj

Differential Revision: https://phabricator.services.mozilla.com/D54728

--HG--
extra : moz-landing-system : lando
parent 8d2f0d1b
changeset: 571402:0c63dcd7a1c6
user: Steven Michaud <smichaud@pobox.com>
date: Tue Nov 19 21:42:37 2019 +0000
summary: Bug 1371390 - Pay attention to macho images' cpusubtype when creating minidumps (revised). r=gsvelto
diff --git a/src/common/mac/macho_walker.cc b/src/common/mac/macho_walker.cc
--- a/src/common/mac/macho_walker.cc
+++ b/src/common/mac/macho_walker.cc
@@ -151,16 +151,18 @@ bool MachoWalker::FindHeader(cpu_type_t
// header
struct mach_header header;
if (!ReadBytes(&header, sizeof(header), 0))
return false;
if (magic == MH_CIGAM || magic == MH_CIGAM_64)
breakpad_swap_mach_header(&header);
+ header.cpusubtype &= ~CPU_SUBTYPE_MASK;
+
if (cpu_type != header.cputype ||
(cpu_subtype != CPU_SUBTYPE_MULTIPLE &&
cpu_subtype != header.cpusubtype)) {
return false;
}
offset = 0;
return true;
@@ -180,16 +182,18 @@ bool MachoWalker::FindHeader(cpu_type_t
struct fat_arch arch;
for (uint32_t i = 0; i < fat.nfat_arch; ++i) {
if (!ReadBytes(&arch, sizeof(arch), offset))
return false;
if (NXHostByteOrder() != NX_BigEndian)
breakpad_swap_fat_arch(&arch, 1);
+ arch.cpusubtype &= ~CPU_SUBTYPE_MASK;
+
if (arch.cputype == cpu_type &&
(cpu_subtype == CPU_SUBTYPE_MULTIPLE ||
arch.cpusubtype == cpu_subtype)) {
offset = arch.offset;
return true;
}
offset += sizeof(arch);
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment