mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-11-02 09:01:48 -05:00
topology: builder: Fix possibly uninitialized variable in write_elem_block()
When an empty list is passed to write_elem_block(), it may leave
vendor_type uninitialized.
builder.c: In function ‘write_elem_block’:
builder.c:127:8: warning: ‘vendor_type’ may be used uninitialized in this function [-Wmaybe-uninitialized]
ret = write_block_header(tplg, tplg_type, vendor_type,
^
builder.c:114:33: note: ‘vendor_type’ was declared here
int ret, wsize = 0, count = 0, vendor_type;
^
Add an immediate return for count = 0 for avoiding it, and simplify
the code initializing vendor_type without using a one-shot loop.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
03d6b15291
commit
76b9cae026
1 changed files with 4 additions and 5 deletions
|
|
@ -116,13 +116,12 @@ static int write_elem_block(snd_tplg_t *tplg,
|
|||
/* count number of elements */
|
||||
list_for_each(pos, base)
|
||||
count++;
|
||||
if (!count)
|
||||
return 0;
|
||||
|
||||
/* write the header for this block */
|
||||
list_for_each(pos, base) {
|
||||
elem = list_entry(pos, struct tplg_elem, list);
|
||||
vendor_type = elem->vendor_type;
|
||||
break;
|
||||
}
|
||||
elem = list_entry(base->next, struct tplg_elem, list);
|
||||
vendor_type = elem->vendor_type;
|
||||
|
||||
ret = write_block_header(tplg, tplg_type, vendor_type,
|
||||
SND_SOC_TPLG_ABI_VERSION, 0, size, count);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue