[alsa-devel] [PATCH] amixer: fix indentation when printing container TLV contents
Takashi Iwai
tiwai at suse.de
Wed Oct 2 17:36:42 CEST 2013
At Tue, 1 Oct 2013 23:46:53 +0300,
Anssi Hannula wrote:
>
> decode_tlv() adds indentation in the beginning, with the expectation
> that the TLV will be printed on the line afterwards in a switch-case.
>
> However, in the case of a container TLV the switch-case simply adds
> another level of indentation and calls decode_tlv() for the inner TLVs.
> This causes the first inner TLV to be printed with too much indentation
> and double '|'.
>
> Fix that by printing "container" and a newline for container TLVs, so
> that the result is as follows:
> : values=0,0,0,0,0,0,0,0
> | container
> | chmap-variable=FL,FR
> | chmap-variable=FL,FR,LFE
> | chmap-variable=FL,FR,FC
>
> Signed-off-by: Anssi Hannula <anssi.hannula at iki.fi>
Thanks, applied now.
Takashi
> ---
> amixer/amixer.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/amixer/amixer.c b/amixer/amixer.c
> index b83b0c3..cf82892 100644
> --- a/amixer/amixer.c
> +++ b/amixer/amixer.c
> @@ -460,6 +460,7 @@ static void decode_tlv(unsigned int spaces, unsigned int *tlv, unsigned int tlv_
> }
> switch (type) {
> case SND_CTL_TLVT_CONTAINER:
> + printf("container\n");
> size += sizeof(unsigned int) -1;
> size /= sizeof(unsigned int);
> while (idx < size) {
> --
> 1.8.1.5
>
More information about the Alsa-devel
mailing list