diff options
Diffstat (limited to 'lldb/source/Core/Mangled.cpp')
| -rw-r--r-- | lldb/source/Core/Mangled.cpp | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/lldb/source/Core/Mangled.cpp b/lldb/source/Core/Mangled.cpp index c3657952c16..95fff224846 100644 --- a/lldb/source/Core/Mangled.cpp +++ b/lldb/source/Core/Mangled.cpp @@ -95,7 +95,7 @@ Mangled::Clear () int Mangled::Compare (const Mangled& a, const Mangled& b) { - return ConstString::Compare(a.GetName(), a.GetName()); + return ConstString::Compare(a.GetName(ePreferDemangled), a.GetName(ePreferDemangled)); } @@ -214,12 +214,28 @@ Mangled::GetMangledName () const // Get the demangled name if there is one, else return the mangled name. //---------------------------------------------------------------------- const ConstString& -Mangled::GetName () const +Mangled::GetName (Mangled::NamePreference preference) const { - const ConstString& name = GetDemangledName(); - if (name && !name.IsEmpty()) - return name; - return m_mangled; + switch (preference) + { + case ePreferDemangled: + { + const ConstString& name = GetDemangledName(); + if (name && !name.IsEmpty()) + return name; + return m_mangled; + } + break; + case ePreferMangled: + { + const ConstString& name = GetMangledName(); + if (name && !name.IsEmpty()) + return name; + return m_demangled; + + } + break; + } } //---------------------------------------------------------------------- |

