mirror of
https://github.com/wolfpld/tracy.git
synced 2025-03-20 07:40:02 +08:00
There are situations in which inSym can be nullptr.
Don't know exactly how to reproduce this. Nevertheless, the capture was produced in an usual way. This may be dependant on the exact client configuration.
This commit is contained in:
+11
-9
@@ -13764,20 +13764,22 @@ void View::DrawSamplesStatistics(Vector<SymList>& data, int64_t timeRange, Accum
|
||||
if( !m_statSeparateInlines && hasNoSamples && v.symAddr != 0 && v.count > 0 )
|
||||
{
|
||||
auto inSym = m_worker.GetInlineSymbolList( v.symAddr, symlen );
|
||||
assert( inSym != nullptr );
|
||||
const auto symEnd = v.symAddr + symlen;
|
||||
while( *inSym < symEnd )
|
||||
if( inSym )
|
||||
{
|
||||
auto sit = inlineMap.find( *inSym );
|
||||
if( sit != inlineMap.end() )
|
||||
const auto symEnd = v.symAddr + symlen;
|
||||
while( *inSym < symEnd )
|
||||
{
|
||||
if( sit->second.excl != 0 )
|
||||
auto sit = inlineMap.find( *inSym );
|
||||
if( sit != inlineMap.end() )
|
||||
{
|
||||
hasNoSamples = false;
|
||||
break;
|
||||
if( sit->second.excl != 0 )
|
||||
{
|
||||
hasNoSamples = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
inSym++;
|
||||
}
|
||||
inSym++;
|
||||
}
|
||||
}
|
||||
if( hasNoSamples )
|
||||
|
||||
Reference in New Issue
Block a user