vlc | branch: master | Rémi Denis-Courmont <[email protected]> | Wed Oct 21
20:30:49 2015 +0300| [1d92fdf3e259b0f8d482b4a5534022cdc71fea16] | committer:
Rémi Denis-Courmont
alsa: insert default choice if not in ALSA device hints
This ensures that the default value ("default") for alsa-audio-device
is listed as a possible choice.
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1d92fdf3e259b0f8d482b4a5534022cdc71fea16
---
modules/audio_output/alsa.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/modules/audio_output/alsa.c b/modules/audio_output/alsa.c
index 7e71d3e..42c1d75 100644
--- a/modules/audio_output/alsa.c
+++ b/modules/audio_output/alsa.c
@@ -709,6 +709,7 @@ static int EnumDevices(vlc_object_t *obj, char const
*varname,
char **ids = NULL, **names = NULL;
unsigned n = 0;
+ bool hinted_default = false;
for (size_t i = 0; hints[i] != NULL; i++)
{
@@ -729,9 +730,22 @@ static int EnumDevices(vlc_object_t *obj, char const
*varname,
ids[n] = name;
names[n] = desc;
n++;
+
+ if (!strcmp(name, "default"))
+ hinted_default = true;
}
snd_device_name_free_hint(hints);
+
+ if (!hinted_default)
+ {
+ ids = xrealloc (ids, (n + 1) * sizeof (*ids));
+ names = xrealloc (names, (n + 1) * sizeof (*names));
+ ids[n] = xstrdup ("default");
+ names[n] = _("Default");
+ n++;
+ }
+
*idp = ids;
*namep = names;
(void) varname;
_______________________________________________
vlc-commits mailing list
[email protected]
https://mailman.videolan.org/listinfo/vlc-commits