mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-22 15:40:11 +01:00
glsl: Fix null return coverity warning
Add an assert on the result of as_dereference() not being NULL: >>> CID 1324978: Null pointer dereferences (NULL_RETURNS) >>> Dereferencing a null pointer "deref_record->record->as_dereference()". Since we are introducing a new variable to hold the result of as_dereference(), take the opportunity to rename deref_record_type to interface_type and just name the new variable interface_deref, which is less confusing. Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
This commit is contained in:
parent
6bf718fec2
commit
1dc2db7a4d
1 changed files with 6 additions and 4 deletions
|
|
@ -922,12 +922,14 @@ lower_ubo_reference_visitor::calculate_unsized_array_stride(ir_dereference *dere
|
||||||
case ir_type_dereference_record:
|
case ir_type_dereference_record:
|
||||||
{
|
{
|
||||||
ir_dereference_record *deref_record = (ir_dereference_record *) deref;
|
ir_dereference_record *deref_record = (ir_dereference_record *) deref;
|
||||||
const struct glsl_type *deref_record_type =
|
ir_dereference *interface_deref =
|
||||||
deref_record->record->as_dereference()->type;
|
deref_record->record->as_dereference();
|
||||||
unsigned record_length = deref_record_type->length;
|
assert(interface_deref != NULL);
|
||||||
|
const struct glsl_type *interface_type = interface_deref->type;
|
||||||
|
unsigned record_length = interface_type->length;
|
||||||
/* Unsized array is always the last element of the interface */
|
/* Unsized array is always the last element of the interface */
|
||||||
const struct glsl_type *unsized_array_type =
|
const struct glsl_type *unsized_array_type =
|
||||||
deref_record_type->fields.structure[record_length - 1].type->fields.array;
|
interface_type->fields.structure[record_length - 1].type->fields.array;
|
||||||
|
|
||||||
const bool array_row_major =
|
const bool array_row_major =
|
||||||
is_dereferenced_thing_row_major(deref_record);
|
is_dereferenced_thing_row_major(deref_record);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue