diff --git a/server/TracyView.cpp b/server/TracyView.cpp index 1cae27ad..dd7629b3 100644 --- a/server/TracyView.cpp +++ b/server/TracyView.cpp @@ -12479,6 +12479,11 @@ void View::DrawStatistics() ImGui::NextColumn(); if( symlen != 0 ) { + if( m_worker.HasSymbolCode( codeAddr ) ) + { + TextDisabledUnformatted( ICON_FA_DATABASE ); + ImGui::SameLine(); + } if( isInline ) { TextDisabledUnformatted( "<" ); diff --git a/server/TracyWorker.cpp b/server/TracyWorker.cpp index 8becf68b..6924daad 100644 --- a/server/TracyWorker.cpp +++ b/server/TracyWorker.cpp @@ -2080,6 +2080,11 @@ const SymbolData* Worker::GetSymbolData( uint64_t sym ) const } } +bool Worker::HasSymbolCode( uint64_t sym ) const +{ + return m_data.symbolCode.find( sym ) != m_data.symbolCode.end(); +} + const char* Worker::GetSymbolCode( uint64_t sym, uint32_t& len ) const { auto it = m_data.symbolCode.find( sym ); diff --git a/server/TracyWorker.hpp b/server/TracyWorker.hpp index 8d275fef..a9705c6b 100644 --- a/server/TracyWorker.hpp +++ b/server/TracyWorker.hpp @@ -493,6 +493,7 @@ public: CallstackFrameId PackPointer( uint64_t ptr ) const; uint64_t GetCanonicalPointer( const CallstackFrameId& id ) const; const SymbolData* GetSymbolData( uint64_t sym ) const; + bool HasSymbolCode( uint64_t sym ) const; const char* GetSymbolCode( uint64_t sym, uint32_t& len ) const; uint64_t GetSymbolForAddress( uint64_t address ) const; uint64_t GetSymbolForAddress( uint64_t address, uint32_t& offset ) const;