mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-01 22:58:50 -04:00
pulse-server: Make sure peer_sink name is filled
Use 'unknown' when we can't find the peer_name. Otherwise we will just get a protocol error when the node.name is missing.
This commit is contained in:
parent
c51ced42b4
commit
d2e4ad1ae6
1 changed files with 6 additions and 0 deletions
|
|
@ -597,6 +597,8 @@ static int reply_create_playback_stream(struct stream *stream, struct pw_manager
|
|||
if (peer && pw_manager_object_is_sink(peer)) {
|
||||
peer_index = peer->index;
|
||||
peer_name = pw_properties_get(peer->props, PW_KEY_NODE_NAME);
|
||||
if (peer_name == NULL)
|
||||
peer_name = "unknown";
|
||||
} else {
|
||||
peer_index = SPA_ID_INVALID;
|
||||
peer_name = NULL;
|
||||
|
|
@ -751,6 +753,8 @@ static int reply_create_record_stream(struct stream *stream, struct pw_manager_o
|
|||
peer = find_linked(manager, peer->id, PW_DIRECTION_OUTPUT);
|
||||
if (peer && pw_manager_object_is_source_or_monitor(peer)) {
|
||||
name = pw_properties_get(peer->props, PW_KEY_NODE_NAME);
|
||||
if (name == NULL)
|
||||
name = "unknown";
|
||||
peer_index = peer->index;
|
||||
if (!pw_manager_object_is_source(peer)) {
|
||||
size_t len = (name ? strlen(name) : 5) + 10;
|
||||
|
|
@ -860,6 +864,8 @@ static void manager_added(void *data, struct pw_manager_object *o)
|
|||
s->peer_index = peer->index;
|
||||
|
||||
peer_name = pw_properties_get(peer->props, PW_KEY_NODE_NAME);
|
||||
if (peer_name == NULL)
|
||||
peer_name = "unknown";
|
||||
if (peer_name && s->direction == PW_DIRECTION_INPUT &&
|
||||
pw_manager_object_is_monitor(peer)) {
|
||||
int len = strlen(peer_name) + 10;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue