media: cec: extron-da-hd-4k-plus: don't use -1 as an error code
The logic at get_edid_tag_location() returns either an offset
or an error condition. However, the error condition uses a
non-standard "-1" value. This hits a Coverity bug, as Coverity
assumes that positive values are underflow. While this is a
false positive, returning error codes as -1 is an issue.
So, instead, use -ENOENT to indicate that the tag was not found.
Fixes: 056f2821b6 ("media: cec: extron-da-hd-4k-plus: add the Extron DA HD 4K Plus CEC driver")
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
This commit is contained in:
@@ -348,12 +348,12 @@ static int get_edid_tag_location(const u8 *edid, unsigned int size,
|
||||
|
||||
/* Return if not a CTA-861 extension block */
|
||||
if (size < 256 || edid[0] != 0x02 || edid[1] != 0x03)
|
||||
return -1;
|
||||
return -ENOENT;
|
||||
|
||||
/* search tag */
|
||||
d = edid[0x02] & 0x7f;
|
||||
if (d <= 4)
|
||||
return -1;
|
||||
return -ENOENT;
|
||||
|
||||
i = 0x04;
|
||||
end = 0x00 + d;
|
||||
@@ -371,7 +371,7 @@ static int get_edid_tag_location(const u8 *edid, unsigned int size,
|
||||
return offset + i;
|
||||
i += len + 1;
|
||||
} while (i < end);
|
||||
return -1;
|
||||
return -ENOENT;
|
||||
}
|
||||
|
||||
static void extron_edid_crc(u8 *edid)
|
||||
|
||||
Reference in New Issue
Block a user