libsysprof: create hook for supplemental writer data

This commit is contained in:
Christian Hergert
2019-05-27 20:54:41 -07:00
parent 4da55f4267
commit 8a246d4453
3 changed files with 39 additions and 0 deletions

View File

@ -185,12 +185,23 @@ static void
sysprof_local_profiler_finish_stopping (SysprofLocalProfiler *self)
{
SysprofLocalProfilerPrivate *priv = sysprof_local_profiler_get_instance_private (self);
g_autoptr(SysprofCaptureReader) reader = NULL;
g_assert (SYSPROF_IS_LOCAL_PROFILER (self));
g_assert (priv->is_starting == FALSE);
g_assert (priv->is_stopping == TRUE);
g_assert (priv->stopping->len == 0);
reader = sysprof_capture_writer_create_reader (priv->writer, 0);
for (guint i = 0; i < priv->sources->len; i++)
{
SysprofSource *source = g_ptr_array_index (priv->sources, i);
sysprof_capture_reader_reset (reader);
sysprof_source_supplement (source, reader);
}
if (priv->failures->len > 0)
{
const GError *error = g_ptr_array_index (priv->failures, 0);