loop: add method to run a function with the lock

Convert some _invoke to _locked
This commit is contained in:
Wim Taymans 2025-03-10 17:24:13 +01:00
parent fb49e0795c
commit f7fdafc203
18 changed files with 99 additions and 57 deletions

View file

@ -1131,7 +1131,7 @@ int spa_avb_reassign_follower(struct state *state)
if (following != state->following) {
spa_log_debug(state->log, "%p: reassign follower %d->%d", state, state->following, following);
state->following = following;
spa_loop_invoke(state->data_loop, do_reassign_follower, 0, NULL, 0, true, state);
spa_loop_locked(state->data_loop, do_reassign_follower, 0, NULL, 0, state);
}
freewheel = state->position &&
@ -1208,7 +1208,7 @@ int spa_avb_pause(struct state *state)
spa_log_debug(state->log, "%p: pause", state);
spa_loop_invoke(state->data_loop, do_remove_source, 0, NULL, 0, true, state);
spa_loop_locked(state->data_loop, do_remove_source, 0, NULL, 0, state);
state->started = false;