diff --git a/server/TracyWorker.cpp b/server/TracyWorker.cpp index 93ac6b08..1874dd8a 100644 --- a/server/TracyWorker.cpp +++ b/server/TracyWorker.cpp @@ -2265,6 +2265,14 @@ const SymbolData* Worker::GetSymbolData( uint64_t sym ) const } } +const char* Worker::GetSymbolCode( uint64_t sym, uint32_t& len ) const +{ + auto it = m_data.symbolCode.find( sym ); + if( it == m_data.symbolCode.end() ) return nullptr; + len = it->second.len; + return it->second.data; +} + int64_t Worker::GetZoneEnd( const ZoneEvent& ev ) { auto ptr = &ev; diff --git a/server/TracyWorker.hpp b/server/TracyWorker.hpp index ae43148a..bb168317 100644 --- a/server/TracyWorker.hpp +++ b/server/TracyWorker.hpp @@ -429,6 +429,7 @@ public: const CallstackFrameData* GetCallstackFrame( const CallstackFrameId& ptr ) const; uint64_t GetCanonicalPointer( const CallstackFrameId& id ) const; const SymbolData* GetSymbolData( uint64_t sym ) const; + const char* GetSymbolCode( uint64_t sym, uint32_t& len ) const; #ifndef TRACY_NO_STATISTICS const VarArray& GetParentCallstack( uint32_t idx ) const { return *m_data.parentCallstackPayload[idx]; }