mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-01 03:52:25 +00:00
libs: utils: glx: check return value
Coverity scan bug: If the function returns an error value, the error value may be mistaken for a normal value. Function sscanf returns the number of assignations done. Validate this return value with the number of expected variables to match.
This commit is contained in:
parent
d99d5704a4
commit
fbffda4e2f
1 changed files with 7 additions and 3 deletions
|
@ -1163,7 +1163,7 @@ GstVaapiGLApi
|
|||
gl_get_current_api (guint * major, guint * minor)
|
||||
{
|
||||
const gchar *version;
|
||||
gint maj, min, n;
|
||||
gint maj, min, n, sret;
|
||||
GstVaapiGLApi ret = (1 << 31);
|
||||
|
||||
while (ret != GST_VAAPI_GL_API_NONE) {
|
||||
|
@ -1181,7 +1181,9 @@ gl_get_current_api (guint * major, guint * minor)
|
|||
if (n < 13)
|
||||
goto next;
|
||||
|
||||
sscanf (&version[10], "%d.%d", &maj, &min);
|
||||
sret = sscanf (&version[10], "%d.%d", &maj, &min);
|
||||
if (sret != 2)
|
||||
goto next;
|
||||
|
||||
if (maj <= 0 || min < 0)
|
||||
goto next;
|
||||
|
@ -1196,7 +1198,9 @@ gl_get_current_api (guint * major, guint * minor)
|
|||
|
||||
goto next;
|
||||
} else {
|
||||
sscanf (version, "%d.%d", &maj, &min);
|
||||
sret = sscanf (version, "%d.%d", &maj, &min);
|
||||
if (sret != 2)
|
||||
goto next;
|
||||
|
||||
if (maj <= 0 || min < 0)
|
||||
goto next;
|
||||
|
|
Loading…
Reference in a new issue