aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/alsa/alsa-api-mixer.c
diff options
context:
space:
mode:
authorThierry Bultel <thierry.bultel@iot.bzh>2019-02-20 12:24:41 +0100
committerThierry Bultel <thierry.bultel@iot.bzh>2019-05-13 13:55:58 +0200
commit43df82896d8535f99233b4d3ab35a744b07871e0 (patch)
treeef69b33d17629f6eddd249eadc7f2c446557620a /plugins/alsa/alsa-api-mixer.c
parent622096c841403b4756f04692cd4fa20eff5417ed (diff)
loops/avirt: forget saved loops after creationsandbox/tbultel/spec-2387
avirt needs a backup of loops, before creating the streams. However, this breaks software dynamic streams such as those of of type bluez-alsa, because the logic was re-calling the loop creation at each call of the 'attach' verb. The fix simply consists in forgetting the saved loops once they are created Bug-AGL: SPEC-2387 Change-Id: I63f492b89233bed12de583de6e1077ac1c9c3ccf Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
Diffstat (limited to 'plugins/alsa/alsa-api-mixer.c')
-rw-r--r--plugins/alsa/alsa-api-mixer.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/plugins/alsa/alsa-api-mixer.c b/plugins/alsa/alsa-api-mixer.c
index c000ea8..15dae20 100644
--- a/plugins/alsa/alsa-api-mixer.c
+++ b/plugins/alsa/alsa-api-mixer.c
@@ -618,7 +618,11 @@ STATIC void MixerAttachVerb(AFB_ReqT request) {
AFB_ApiInfo(mixer->api, "%s set LOOPS/AVIRT", __func__);
error = ApiLoopAttach(mixer, request, uid,
((loopsJ) ? loopsJ : LoopsJ), streamsJ);
- if (error) goto fail_loop;
+ if (error)
+ goto fail;
+ // Now, forget the saved LoopsJ
+ if (LoopsJ)
+ LoopsJ = NULL;
}
AFB_ApiInfo(mixer->api, "%s set RAMPS", __func__);