mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-06 13:30:01 -05:00
impl-node: always INACTIVATE a node when stopping
Set the node state INACTIVE on the client and server side in all cases when stopping to ensure nothing tries to schedule the node anymore.
This commit is contained in:
parent
1bd4d21142
commit
f1b6a62d8b
2 changed files with 11 additions and 11 deletions
|
|
@ -2314,13 +2314,14 @@ static int do_unprepare_client(struct spa_loop *loop, bool async, uint32_t seq,
|
|||
struct link *l;
|
||||
|
||||
pw_log_debug("%p prepared:%d ", c, c->rt.prepared);
|
||||
if (!c->rt.prepared)
|
||||
return 0;
|
||||
|
||||
old_state = SPA_ATOMIC_XCHG(c->activation->status, PW_NODE_ACTIVATION_INACTIVE);
|
||||
if (old_state != PW_NODE_ACTIVATION_FINISHED)
|
||||
trigger = get_time_ns(c->l->system);
|
||||
|
||||
if (!c->rt.prepared)
|
||||
return 0;
|
||||
|
||||
spa_list_for_each(l, &c->rt.target_links, target_link) {
|
||||
if (!c->async && trigger != 0)
|
||||
l->trigger(l, trigger);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue