diff options
Diffstat (limited to 'media-video/pipewire/files/0.3.69/0002-revert-alsa-mixer-control-element.patch')
-rw-r--r-- | media-video/pipewire/files/0.3.69/0002-revert-alsa-mixer-control-element.patch | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/media-video/pipewire/files/0.3.69/0002-revert-alsa-mixer-control-element.patch b/media-video/pipewire/files/0.3.69/0002-revert-alsa-mixer-control-element.patch new file mode 100644 index 000000000000..1076ad101d0f --- /dev/null +++ b/media-video/pipewire/files/0.3.69/0002-revert-alsa-mixer-control-element.patch @@ -0,0 +1,38 @@ +https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/916f1cdfbfdc414d83031aef941a9909d1e603bd + +From 916f1cdfbfdc414d83031aef941a9909d1e603bd Mon Sep 17 00:00:00 2001 +From: Wim Taymans <wtaymans@redhat.com> +Date: Fri, 14 Apr 2023 16:32:18 +0200 +Subject: [PATCH] Revert "alsa-mixer: allow to re-attach the mixer control + element" + +This reverts commit b554fc20e9ff97064721c89eb15b1b45870584e5. +--- a/spa/plugins/alsa/acp/alsa-util.c ++++ b/spa/plugins/alsa/acp/alsa-util.c +@@ -1648,20 +1648,12 @@ static int mixer_class_event(snd_mixer_class_t *class, unsigned int mask, + } else if (mask & SND_CTL_EVENT_MASK_ADD) { + snd_ctl_elem_iface_t iface = snd_hctl_elem_get_interface(helem); + if (iface == SND_CTL_ELEM_IFACE_CARD || iface == SND_CTL_ELEM_IFACE_PCM) { +- snd_mixer_t *mixer = snd_mixer_class_get_mixer(class); +- snd_ctl_elem_iface_t iface = snd_hctl_elem_get_interface(helem); +- const char *name = snd_hctl_elem_get_name(helem); +- const int index = snd_hctl_elem_get_index(helem); +- const int device = snd_hctl_elem_get_device(helem); + snd_mixer_elem_t *new_melem; + +- new_melem = pa_alsa_mixer_find(mixer, iface, name, index, device); +- if (!new_melem) { +- /* Put the hctl pointer as our private data - it will be useful for callbacks */ +- if ((err = snd_mixer_elem_new(&new_melem, SND_MIXER_ELEM_PULSEAUDIO, 0, helem, NULL)) < 0) { +- pa_log_warn("snd_mixer_elem_new failed: %s", pa_alsa_strerror(err)); +- return 0; +- } ++ /* Put the hctl pointer as our private data - it will be useful for callbacks */ ++ if ((err = snd_mixer_elem_new(&new_melem, SND_MIXER_ELEM_PULSEAUDIO, 0, helem, NULL)) < 0) { ++ pa_log_warn("snd_mixer_elem_new failed: %s", pa_alsa_strerror(err)); ++ return 0; + } + + if ((err = snd_mixer_elem_attach(new_melem, helem)) < 0) { +-- +GitLab |