libsysprof-analyze: fix descendants of process symbols

This commit is contained in:
Christian Hergert
2023-06-14 14:25:01 -07:00
parent a296fa3eab
commit e63c0b7c2e

View File

@ -173,9 +173,12 @@ sysprof_descendants_model_add_traceable (SysprofDescendantsModel *self,
g_assert (SYSPROF_IS_SYMBOL (from_symbol));
stack_depth = MIN (MAX_STACK_DEPTH, sysprof_document_traceable_get_stack_depth (traceable));
symbols = g_alloca (sizeof (SysprofSymbol *) * stack_depth);
symbols = g_alloca (sizeof (SysprofSymbol *) * (stack_depth + 1));
n_symbols = sysprof_document_symbolize_traceable (document, traceable, symbols, stack_depth, &final_context);
if (sysprof_symbol_get_kind (from_symbol) == SYSPROF_SYMBOL_KIND_PROCESS)
symbols[n_symbols++] = from_symbol;
for (guint i = n_symbols; i > 0; i--)
{
SysprofSymbol *symbol = symbols[i-1];