pipewire-pulse: don't republish when object changes

Ignore changes to the object. Otherwise, we would remove and publish
the device again for each volume change.

Fixes #1406
This commit is contained in:
Wim Taymans 2021-07-07 17:38:17 +02:00
parent 33f90abfb5
commit 33e07cc984

View file

@ -518,25 +518,7 @@ static void client_callback(AvahiClient *c, AvahiClientState state, void *d)
break; break;
default: default:
break; break;
} }
}
static void manager_updated(void *d, struct pw_manager_object *o)
{
struct service *s;
char *service_name;
if (!pw_manager_object_is_sink(o) && !pw_manager_object_is_source(o))
return;
service_name = get_service_name(o);
s = pw_manager_object_add_data(o, service_name, sizeof(struct service));
free(service_name);
spa_assert(s);
publish_service(s);
} }
static void manager_removed(void *d, struct pw_manager_object *o) static void manager_removed(void *d, struct pw_manager_object *o)
@ -562,7 +544,6 @@ static void manager_added(void *d, struct pw_manager_object *o)
static const struct pw_manager_events manager_events = { static const struct pw_manager_events manager_events = {
PW_VERSION_MANAGER_EVENTS, PW_VERSION_MANAGER_EVENTS,
.added = manager_added, .added = manager_added,
.updated = manager_updated,
.removed = manager_removed, .removed = manager_removed,
}; };