[PATCH 2/9] control: Fix a bug that prevented namehint behaviour

Takashi Iwai tiwai at suse.de
Tue Jun 23 12:57:42 CEST 2020


On Mon, 22 Jun 2020 15:15:08 +0200,
Mark Hills wrote:
> 
> Looks like the documented behaviour was broken in commit 1ba513f9 in
> 2006, with the introduction of multiple fields.
> 
> I've chosen to match the described behaviour. Prior to this patch,
> using namehint could be made to work by exploiting the lack of escaping
> of the "name", populating the other fields:
> 
>   "plug:front|DESCDo all conversions for front speakers"
> 
> rather than that which is documented and presumed to be the intention
> for asoundrc files:
> 
>   "plug:front|Do all conversions for front speakers"
> 
> Everything seems to strongly suggest nobody is using this feature; I can
> find no working examples through a web search and probably someone
> would have hit this bug. It's not documented in configuration, only in
> the snd_device_name_hint() call. So it would probably clutter things to
> provide compatibility for the old behaviour.
> 
> I have found it to be very useful since working in Chromium, where it is
> the only way to expose chosen ALSA devices to web applications.
> 
> A temporary buffer is required to null-terminate the string.  I see no
> use of alloca() in the code, presumably to avoid unbounded stack size.
> So memory is allocated on the heap.
> 
> Signed-off-by: Mark Hills <mark at xwax.org>

Thanks, applied.


Takashi


More information about the Alsa-devel mailing list