Arun Raghavan pushed to branch master at PulseAudio / pulseaudio
Commits: b76f6682 by David Emett at 2019-08-27T03:21:27Z dbus: fix ActiveProfile setting Just like with handle_set_active_port, we need to look up the profile corresponding to the provided path rather than doing a name comparison. Fixes: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/709 - - - - - 1 changed file: - src/modules/dbus/iface-card.c Changes: ===================================== src/modules/dbus/iface-card.c ===================================== @@ -324,7 +324,9 @@ static void handle_get_active_profile(DBusConnection *conn, DBusMessage *msg, vo static void handle_set_active_profile(DBusConnection *conn, DBusMessage *msg, DBusMessageIter *iter, void *userdata) { pa_dbusiface_card *c = userdata; const char *new_active_path; - pa_dbusiface_card_profile *new_active; + pa_dbusiface_card_profile *profile; + void *state; + pa_dbusiface_card_profile *new_active = NULL; int r; pa_assert(conn); @@ -334,7 +336,14 @@ static void handle_set_active_profile(DBusConnection *conn, DBusMessage *msg, DB dbus_message_iter_get_basic(iter, &new_active_path); - if (!(new_active = pa_hashmap_get(c->profiles, new_active_path))) { + PA_HASHMAP_FOREACH(profile, c->profiles, state) { + if (pa_streq(pa_dbusiface_card_profile_get_path(profile), new_active_path)) { + new_active = profile; + break; + } + } + + if (!new_active) { pa_dbus_send_error(conn, msg, PA_DBUS_ERROR_NOT_FOUND, "%s: No such profile.", new_active_path); return; } View it on GitLab: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/commit/b76f668253d24e5dd1b1bf865325e094ac6f05e9 -- View it on GitLab: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/commit/b76f668253d24e5dd1b1bf865325e094ac6f05e9 You're receiving this email because of your account on gitlab.freedesktop.org.
_______________________________________________ pulseaudio-commits mailing list pulseaudio-commits@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/pulseaudio-commits