pulse-server: stream: only remove from list if pending

Only call `spa_list_remove()` in `stream_free()` if the
stream is pending. `spa_list_remove()` does not reinitialize
the list node, therefore calling `spa_list_remove()` again
after the stream has been removed from the pending list
will corrupt the pending list of the client.
This commit is contained in:
Barnabás Pőcze 2021-12-14 14:39:38 +01:00 committed by Wim Taymans
parent 043934655a
commit 6f412236d5
3 changed files with 8 additions and 3 deletions

View file

@ -106,6 +106,7 @@ struct stream {
unsigned int in_prebuf:1;
unsigned int done:1;
unsigned int killed:1;
unsigned int pending:1;
};
struct stream *stream_new(struct client *client, enum stream_type type, uint32_t create_tag,