thunk: assert nb_fields is valid
thunk.c:91:32: warning: Call to 'malloc' has an allocation size of 0 bytes se->field_offsets[i] = malloc(nb_fields * sizeof(int)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Reported-by: Clang Static Analyzer Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
This commit is contained in:
parent
b929f7e56f
commit
a44af723b3
3
thunk.c
3
thunk.c
|
@ -67,7 +67,6 @@ void thunk_register_struct(int id, const char *name, const argtype *types)
|
||||||
int nb_fields, offset, max_align, align, size, i, j;
|
int nb_fields, offset, max_align, align, size, i, j;
|
||||||
|
|
||||||
assert(id < max_struct_entries);
|
assert(id < max_struct_entries);
|
||||||
se = struct_entries + id;
|
|
||||||
|
|
||||||
/* first we count the number of fields */
|
/* first we count the number of fields */
|
||||||
type_ptr = types;
|
type_ptr = types;
|
||||||
|
@ -76,6 +75,8 @@ void thunk_register_struct(int id, const char *name, const argtype *types)
|
||||||
type_ptr = thunk_type_next(type_ptr);
|
type_ptr = thunk_type_next(type_ptr);
|
||||||
nb_fields++;
|
nb_fields++;
|
||||||
}
|
}
|
||||||
|
assert(nb_fields > 0);
|
||||||
|
se = struct_entries + id;
|
||||||
se->field_types = types;
|
se->field_types = types;
|
||||||
se->nb_fields = nb_fields;
|
se->nb_fields = nb_fields;
|
||||||
se->name = name;
|
se->name = name;
|
||||||
|
|
Loading…
Reference in New Issue