diff --git a/server/TracyWorker.cpp b/server/TracyWorker.cpp index 4eeadaa1..37fed603 100644 --- a/server/TracyWorker.cpp +++ b/server/TracyWorker.cpp @@ -2563,9 +2563,13 @@ bool Worker::DispatchProcess( const QueueItem& ev, char*& ptr ) void Worker::CheckSourceLocation( uint64_t ptr ) { - if( m_data.sourceLocation.find( ptr ) == m_data.sourceLocation.end() ) + if( m_data.checkSrclocLast != ptr ) { - NewSourceLocation( ptr ); + m_data.checkSrclocLast = ptr; + if( m_data.sourceLocation.find( ptr ) == m_data.sourceLocation.end() ) + { + NewSourceLocation( ptr ); + } } } diff --git a/server/TracyWorker.hpp b/server/TracyWorker.hpp index d8350ac5..092e465f 100644 --- a/server/TracyWorker.hpp +++ b/server/TracyWorker.hpp @@ -214,6 +214,7 @@ private: std::pair threadDataLast = std::make_pair( std::numeric_limits::max(), nullptr ); std::pair ctxSwitchLast = std::make_pair( std::numeric_limits::max(), nullptr ); + uint64_t checkSrclocLast = 0; }; struct MbpsBlock