[Lldb-commits] [lldb] r238475 - Don't crash if we don't have a process and need
Sean Callanan
scallanan at apple.com
Thu May 28 13:06:40 PDT 2015
Author: spyffe
Date: Thu May 28 15:06:40 2015
New Revision: 238475
URL: http://llvm.org/viewvc/llvm-project?rev=238475&view=rev
Log:
Don't crash if we don't have a process and need
to check for alternate manglings.
Modified:
lldb/trunk/source/Expression/IRForTarget.cpp
Modified: lldb/trunk/source/Expression/IRForTarget.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Expression/IRForTarget.cpp?rev=238475&r1=238474&r2=238475&view=diff
==============================================================================
--- lldb/trunk/source/Expression/IRForTarget.cpp (original)
+++ lldb/trunk/source/Expression/IRForTarget.cpp Thu May 28 15:06:40 2015
@@ -237,21 +237,24 @@ IRForTarget::GetFunctionAddress (llvm::F
// For example, "std::basic_string<...>" has an alternate mangling scheme per
// the Itanium C++ ABI.
lldb::ProcessSP process_sp = m_data_allocator.GetTarget()->GetProcessSP();
- lldb_private::CPPLanguageRuntime *cpp_runtime = process_sp->GetCPPLanguageRuntime();
- if (cpp_runtime && cpp_runtime->GetAlternateManglings(name, alternates))
+ if (process_sp)
{
- for (size_t i = 0; i < alternates.size(); ++i)
+ lldb_private::CPPLanguageRuntime *cpp_runtime = process_sp->GetCPPLanguageRuntime();
+ if (cpp_runtime && cpp_runtime->GetAlternateManglings(name, alternates))
{
- const lldb_private::ConstString &alternate_name = alternates[i];
- if (log)
- log->Printf("Looking up address of function \"%s\" with alternate name \"%s\"",
- name.GetCString(), alternate_name.GetCString());
- if ((found_it = m_decl_map->GetFunctionAddress (alternate_name, fun_addr)))
+ for (size_t i = 0; i < alternates.size(); ++i)
{
+ const lldb_private::ConstString &alternate_name = alternates[i];
if (log)
- log->Printf("Found address of function \"%s\" with alternate name \"%s\"",
+ log->Printf("Looking up address of function \"%s\" with alternate name \"%s\"",
name.GetCString(), alternate_name.GetCString());
- break;
+ if ((found_it = m_decl_map->GetFunctionAddress (alternate_name, fun_addr)))
+ {
+ if (log)
+ log->Printf("Found address of function \"%s\" with alternate name \"%s\"",
+ name.GetCString(), alternate_name.GetCString());
+ break;
+ }
}
}
}
More information about the lldb-commits
mailing list