Make symbol queries optional.

This commit is contained in:
Bartosz Taudul 2020-09-30 15:49:29 +02:00
parent cecc3783a8
commit 641649143c
2 changed files with 4 additions and 4 deletions

View File

@ -4224,7 +4224,7 @@ bool Worker::Process( const QueueItem& ev )
m_serverQuerySpaceLeft++;
break;
case QueueType::CallstackFrame:
ProcessCallstackFrame( ev.callstackFrame );
ProcessCallstackFrame( ev.callstackFrame, true );
break;
case QueueType::SymbolInformation:
ProcessSymbolInformation( ev.symbolInformation );
@ -5610,7 +5610,7 @@ void Worker::ProcessCallstackFrameSize( const QueueCallstackFrameSize& ev )
}
}
void Worker::ProcessCallstackFrame( const QueueCallstackFrame& ev )
void Worker::ProcessCallstackFrame( const QueueCallstackFrame& ev, bool querySymbols )
{
assert( m_pendingCallstackSubframes > 0 );
@ -5628,7 +5628,7 @@ void Worker::ProcessCallstackFrame( const QueueCallstackFrame& ev )
m_callstackFrameStaging->data[idx].line = ev.line;
m_callstackFrameStaging->data[idx].symAddr = ev.symAddr;
if( ev.symAddr != 0 && m_data.symbolMap.find( ev.symAddr ) == m_data.symbolMap.end() && m_pendingSymbols.find( ev.symAddr ) == m_pendingSymbols.end() )
if( querySymbols && ev.symAddr != 0 && m_data.symbolMap.find( ev.symAddr ) == m_data.symbolMap.end() && m_pendingSymbols.find( ev.symAddr ) == m_pendingSymbols.end() )
{
m_pendingSymbols.emplace( ev.symAddr, SymbolPending { name, m_callstackFrameStaging->imageName, file, ev.line, ev.symLen, idx < m_callstackFrameStaging->size - 1 } );
Query( ServerQuerySymbol, ev.symAddr );

View File

@ -648,7 +648,7 @@ private:
tracy_force_inline void ProcessCallstack();
tracy_force_inline void ProcessCallstackSample( const QueueCallstackSample& ev );
tracy_force_inline void ProcessCallstackFrameSize( const QueueCallstackFrameSize& ev );
tracy_force_inline void ProcessCallstackFrame( const QueueCallstackFrame& ev );
tracy_force_inline void ProcessCallstackFrame( const QueueCallstackFrame& ev, bool querySymbols );
tracy_force_inline void ProcessSymbolInformation( const QueueSymbolInformation& ev );
tracy_force_inline void ProcessCodeInformation( const QueueCodeInformation& ev );
tracy_force_inline void ProcessCrashReport( const QueueCrashReport& ev );