Send single string for callstack frame.

This commit is contained in:
Bartosz Taudul 2020-07-26 00:41:49 +02:00
parent 61e3acde06
commit 88685440b6
3 changed files with 2 additions and 7 deletions

View File

@ -2404,12 +2404,11 @@ void Profiler::SendCallstackFrame( uint64_t ptr )
{ {
const auto& frame = frameData.data[i]; const auto& frame = frameData.data[i];
SendString( uint64_t( frame.name ), frame.name, QueueType::CustomStringData ); SendSingleString( frame.name );
SendString( uint64_t( frame.file ), frame.file, QueueType::CustomStringData ); SendString( uint64_t( frame.file ), frame.file, QueueType::CustomStringData );
QueueItem item; QueueItem item;
MemWrite( &item.hdr.type, QueueType::CallstackFrame ); MemWrite( &item.hdr.type, QueueType::CallstackFrame );
MemWrite( &item.callstackFrame.name, (uint64_t)frame.name );
MemWrite( &item.callstackFrame.file, (uint64_t)frame.file ); MemWrite( &item.callstackFrame.file, (uint64_t)frame.file );
MemWrite( &item.callstackFrame.line, frame.line ); MemWrite( &item.callstackFrame.line, frame.line );
MemWrite( &item.callstackFrame.symAddr, frame.symAddr ); MemWrite( &item.callstackFrame.symAddr, frame.symAddr );

View File

@ -383,7 +383,6 @@ struct QueueCallstackFrameSize
struct QueueCallstackFrame struct QueueCallstackFrame
{ {
uint64_t name;
uint64_t file; uint64_t file;
uint32_t line; uint32_t line;
uint64_t symAddr; uint64_t symAddr;

View File

@ -5435,10 +5435,7 @@ void Worker::ProcessCallstackFrame( const QueueCallstackFrame& ev )
{ {
assert( m_pendingCallstackSubframes > 0 ); assert( m_pendingCallstackSubframes > 0 );
auto nit = m_pendingCustomStrings.find( ev.name ); const auto nitidx = GetSingleStringIdx();
assert( nit != m_pendingCustomStrings.end() );
const auto nitidx = nit->second.idx;
m_pendingCustomStrings.erase( nit );
auto fit = m_pendingCustomStrings.find( ev.file ); auto fit = m_pendingCustomStrings.find( ev.file );
assert( fit != m_pendingCustomStrings.end() ); assert( fit != m_pendingCustomStrings.end() );