radeonsi: check if value is negative
Fixes a Coverity defect by adding checks to see if a value is negative before using it to index an array. By checking the value first it makes the code a bit safer but overall should not have a big impact. CID: 1355598 Signed-off-by: Jakob Sinclair <sinclair.jakob@openmailbox.org> Signed-off-by: Marek Olšák <marek.olsak@amd.com>
This commit is contained in:

committed by
Marek Olšák

parent
860210ccfc
commit
76b8c5cc60
@@ -1762,6 +1762,9 @@ static uint32_t si_translate_buffer_dataformat(struct pipe_screen *screen,
|
||||
const struct util_format_description *desc,
|
||||
int first_non_void)
|
||||
{
|
||||
if (first_non_void < 0)
|
||||
return V_008F0C_BUF_DATA_FORMAT_INVALID;
|
||||
|
||||
unsigned type = desc->channel[first_non_void].type;
|
||||
int i;
|
||||
|
||||
@@ -1836,7 +1839,7 @@ static uint32_t si_translate_buffer_numformat(struct pipe_screen *screen,
|
||||
const struct util_format_description *desc,
|
||||
int first_non_void)
|
||||
{
|
||||
if (desc->format == PIPE_FORMAT_R11G11B10_FLOAT)
|
||||
if (desc->format == PIPE_FORMAT_R11G11B10_FLOAT || first_non_void < 0)
|
||||
return V_008F0C_BUF_NUM_FORMAT_FLOAT;
|
||||
|
||||
switch (desc->channel[first_non_void].type) {
|
||||
|
Reference in New Issue
Block a user