pulse-server: improve sink/source state

When a sink is RUNNING but there is nothing linked to the input it must
be the monitor that is keeping it active, report IDLE for the sink in
that case.

When a source is RUNNING but there is nothing linked to the output it
must be the sink part that is keeping it active, report IDLE for the
source.

Fixes #1345
This commit is contained in:
Wim Taymans 2021-06-25 13:23:22 +02:00
parent eb262beb22
commit 0c14ec769f
3 changed files with 44 additions and 3 deletions

View file

@ -155,5 +155,6 @@ struct spa_dict *collect_props(struct spa_pod *info, struct spa_dict *dict);
uint32_t find_profile_id(struct pw_manager_object *card, const char *name);
uint32_t find_port_id(struct pw_manager_object *card, uint32_t direction, const char *port_name);
struct pw_manager_object *find_linked(struct pw_manager *m, uint32_t obj_id, enum pw_direction direction);
bool collect_is_linked(struct pw_manager *m, uint32_t obj_id, enum pw_direction direction);
#endif