Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 15045aa7 authored by Josh Gao's avatar Josh Gao Committed by android-build-merger
Browse files

Merge changes I4b017701,I28aff510 am: 3e378800

am: d3e2121d

Change-Id: I8abdadeab10f232c41250163fb109bd3ca005569
parents 337bc055 d3e2121d
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -422,8 +422,10 @@ static bool dump_thread(log_t* log, BacktraceMap* map, Memory* process_memory,

  dump_registers(log, thread_info.registers.get());

  // Unwind will mutate the registers, so make a copy first.
  std::unique_ptr<Regs> regs_copy(thread_info.registers->Clone());
  std::vector<backtrace_frame_data_t> frames;
  if (!Backtrace::Unwind(thread_info.registers.get(), map, &frames, 0, nullptr)) {
  if (!Backtrace::Unwind(regs_copy.get(), map, &frames, 0, nullptr)) {
    _LOG(log, logtype::THREAD, "Failed to unwind");
    return false;
  }
+4 −0
Original line number Diff line number Diff line
@@ -197,4 +197,8 @@ bool RegsArm::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_mem
  return true;
}

Regs* RegsArm::Clone() {
  return new RegsArm(*this);
}

}  // namespace unwindstack
+4 −0
Original line number Diff line number Diff line
@@ -148,4 +148,8 @@ bool RegsArm64::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_m
  return true;
}

Regs* RegsArm64::Clone() {
  return new RegsArm64(*this);
}

}  // namespace unwindstack
+4 −0
Original line number Diff line number Diff line
@@ -173,4 +173,8 @@ bool RegsMips::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_me
  return true;
}

Regs* RegsMips::Clone() {
  return new RegsMips(*this);
}

}  // namespace unwindstack
+4 −0
Original line number Diff line number Diff line
@@ -160,4 +160,8 @@ bool RegsMips64::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_
  return true;
}

Regs* RegsMips64::Clone() {
  return new RegsMips64(*this);
}

}  // namespace unwindstack
Loading