From 9a1064168051f1efc8711682a7cf84c27868b850 Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Sun, 11 May 2025 06:40:29 +0200 Subject: [PATCH] Fixed subroutine lookup static string issue --- IDEHelper/WinDebugger.cpp | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/IDEHelper/WinDebugger.cpp b/IDEHelper/WinDebugger.cpp index 8348f2c9..49fea559 100644 --- a/IDEHelper/WinDebugger.cpp +++ b/IDEHelper/WinDebugger.cpp @@ -7515,7 +7515,7 @@ String WinDebugger::DbgTypedValueToString(const DbgTypedValue& origTypedValue, c String symbolName; addr_target offset; DbgModule* dwarf; - static String demangledName; + String demangledName; auto subProgram = mDebugTarget->FindSubProgram(funcPtr); if (subProgram != NULL) { @@ -7532,13 +7532,18 @@ String WinDebugger::DbgTypedValueToString(const DbgTypedValue& origTypedValue, c { auto dbgModule = mDebugTarget->FindDbgModuleForAddress(funcPtr); if (dbgModule != NULL) + { demangledName += dbgModule->GetLinkedModule()->mDisplayName + "!"; - demangledName += StrFormat("0x%@", funcPtr); + demangledName += StrFormat("0x%@", funcPtr); + } } - retVal += " {"; - retVal += demangledName; - retVal += "}"; + if (!demangledName.IsEmpty()) + { + retVal += " {"; + retVal += demangledName; + retVal += "}"; + } retVal += "\n" + origValueType->ToString(language); return retVal;