gmain: Fix possible locking issue in source unref

When unref'ing child sources, the lock is already held. But instead of
passing TRUE to g_source_unref_internal it currently passes whether the
lock was already held outside of the current invocation. Just pass TRUE
to fix this possible issue.
This commit is contained in:
Benjamin Berg 2020-10-13 15:09:43 +02:00 committed by Philip Withnall
parent 0e8066e350
commit 6077ec3efa

View File

@ -2293,7 +2293,7 @@ g_source_unref_internal (GSource *source,
g_slist_remove (source->priv->child_sources, child_source); g_slist_remove (source->priv->child_sources, child_source);
child_source->priv->parent_source = NULL; child_source->priv->parent_source = NULL;
g_source_unref_internal (child_source, context, have_lock); g_source_unref_internal (child_source, context, TRUE);
} }
g_slice_free (GSourcePrivate, source->priv); g_slice_free (GSourcePrivate, source->priv);