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

Commit 53cacfa3 authored by Josh Gao's avatar Josh Gao Committed by android-build-merger
Browse files

Merge "Don\'t demangle symbol names." into lmp-dev

am: 69147994

* commit '69147994':
  Don't demangle symbol names.
parents 029b7874 69147994
Loading
Loading
Loading
Loading
+0 −16
Original line number Diff line number Diff line
@@ -60,24 +60,8 @@ bool Backtrace::Unwind(size_t num_ignore_frames, ucontext_t* ucontext) {
  return impl_->Unwind(num_ignore_frames, ucontext);
}

extern "C" char* __cxa_demangle(const char* mangled, char* buf, size_t* len,
                                int* status);

std::string Backtrace::GetFunctionName(uintptr_t pc, uintptr_t* offset) {
  std::string func_name = impl_->GetFunctionNameRaw(pc, offset);
  if (!func_name.empty()) {
#if defined(__APPLE__)
    // Mac OS' __cxa_demangle demangles "f" as "float"; last tested on 10.7.
    if (func_name[0] != '_') {
      return func_name;
    }
#endif
    char* name = __cxa_demangle(func_name.c_str(), 0, 0, 0);
    if (name) {
      func_name = name;
      free(name);
    }
  }
  return func_name;
}