[pulseaudio-discuss] [PATCH] alsa-mixer: Return early in case of no mixer poll descriptors
Tanu Kaskinen
tanuk at iki.fi
Fri Nov 6 05:03:03 PST 2015
On Fri, 2015-11-06 at 12:37 +0100, David Henningsson wrote:
> We encountered an alsa plugin a while ago (not sure if the source
> can be shared) which had mixer controls, but no descriptors to
> poll for changes.
>
> Quit early to avoid latter assertion failures.
>
> BugLink: https://bugs.launchpad.net/bugs/1092377
> Signed-off-by: David Henningsson <david.henningsson at canonical.com>
> ---
>
> An oldie that's been hanging around in the Ubuntu tree for years now.
> I think it makes sense for upstream; will push in one week if no one complains.
>
> src/modules/alsa/alsa-mixer.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/src/modules/alsa/alsa-mixer.c b/src/modules/alsa/alsa-mixer.c
> index 486da83..fdfee02 100644
> --- a/src/modules/alsa/alsa-mixer.c
> +++ b/src/modules/alsa/alsa-mixer.c
> @@ -329,6 +329,10 @@ static void defer_cb(pa_mainloop_api *a, pa_defer_event *e, void *userdata) {
> pa_log("snd_mixer_poll_descriptors_count() failed: %s", pa_alsa_strerror(n));
> return;
> }
> + else if (n == 0) {
> + pa_log_warn("Mixer has no poll descriptors. Please control mixer from PulseAudio only.");
> + return;
> + }
> num_fds = (unsigned) n;
>
> if (num_fds != fdl->num_fds) {
This should be done in pa_alsa_set_mixer_rtpoll() too. Otherwise looks
good.
--
Tanu
More information about the pulseaudio-discuss
mailing list