event: add some trace logs to debug sorting hook dependencies

This commit is contained in:
George Kiagiadakis 2024-01-08 12:10:46 +02:00
parent 03098c88bb
commit 4a3557d8e4
2 changed files with 13 additions and 2 deletions

View file

@ -264,7 +264,7 @@ wp_event_dispatcher_push_event (WpEventDispatcher * self, WpEvent * event)
self->events = g_list_insert_sorted (self->events, event_data,
(GCompareFunc) event_cmp_func);
wp_trace_object (self, "pushed event (%s)", wp_event_get_name (event));
wp_debug_object (self, "pushed event (%s)", wp_event_get_name (event));
/* wakeup the GSource */
spa_system_eventfd_write (self->system, self->eventfd, 1);

View file

@ -388,7 +388,7 @@ wp_event_collect_hooks (WpEvent * event, WpEventDispatcher * dispatcher)
spa_list_append (&collected, &hook_data->link);
wp_trace_boxed (WP_TYPE_EVENT, event, "added "WP_OBJECT_FORMAT"(%s)",
wp_debug_boxed (WP_TYPE_EVENT, event, "added "WP_OBJECT_FORMAT"(%s)",
WP_OBJECT_ARGS (hook), wp_event_hook_get_name (hook));
}
@ -421,6 +421,9 @@ wp_event_collect_hooks (WpEvent * event, WpEventDispatcher * dispatcher)
spa_list_remove (&hook_data->link);
wp_trace_boxed (WP_TYPE_EVENT, event,
"examining: %s", wp_event_hook_get_name (hook_data->hook));
for (guint i = 0; i < hook_data->dependencies->len; i++) {
const gchar *dep = g_ptr_array_index (hook_data->dependencies, i);
/* if the dependency is already in the sorted result list or if
@ -430,9 +433,17 @@ wp_event_collect_hooks (WpEvent * event, WpEventDispatcher * dispatcher)
hook_exists_in (dep, &remaining))) {
deps_satisfied++;
}
wp_trace_boxed (WP_TYPE_EVENT, event, "depends: %s, satisfied: %u/%u",
dep, deps_satisfied, hook_data->dependencies->len);
}
if (deps_satisfied == hook_data->dependencies->len) {
wp_trace_boxed (WP_TYPE_EVENT, event,
"sorted: "WP_OBJECT_FORMAT"(%s)",
WP_OBJECT_ARGS (hook_data->hook),
wp_event_hook_get_name (hook_data->hook));
spa_list_append (&result, &hook_data->link);
made_progress = TRUE;
} else {