amixer: Fix parsing container TLV entries

Fix the wrong calculation of the size of a container TLV entry, which
resulted in "TLV size error" messages.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Takashi Iwai 2012-11-26 16:13:57 +01:00
parent da1c24a24c
commit d6da86117b

View file

@ -531,7 +531,7 @@ static void decode_tlv(unsigned int spaces, unsigned int *tlv, unsigned int tlv_
printf("TLV size error in compound!\n"); printf("TLV size error in compound!\n");
return; return;
} }
decode_tlv(spaces + 2, tlv + idx, tlv[idx+1]); decode_tlv(spaces + 2, tlv + idx, tlv[idx+1] + 8);
idx += 2 + (tlv[1] + sizeof(unsigned int) - 1) / sizeof(unsigned int); idx += 2 + (tlv[1] + sizeof(unsigned int) - 1) / sizeof(unsigned int);
} }
break; break;