mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-20 15:27:07 +00:00
gstvalue: Prevent division or modulo by zero
The step can end up being zero if the underlying value isn't a valid range GValue. In those cases, return FALSE. We don't use g_return*_if_fail since it will already have been triggered by the above-mentionned _get_step() functions. CID #1037132
This commit is contained in:
parent
3e24bbefba
commit
8b51e9dc60
1 changed files with 2 additions and 0 deletions
|
@ -4445,6 +4445,8 @@ gst_value_list_equals_range (const GValue * list, const GValue * value)
|
||||||
const gint64 rmax = gst_value_get_int64_range_max (value);
|
const gint64 rmax = gst_value_get_int64_range_max (value);
|
||||||
const gint64 rstep = gst_value_get_int64_range_step (value);
|
const gint64 rstep = gst_value_get_int64_range_step (value);
|
||||||
GST_DEBUG ("List/range of int64s");
|
GST_DEBUG ("List/range of int64s");
|
||||||
|
if (rstep == 0)
|
||||||
|
return FALSE;
|
||||||
if (list_size != rmax / rstep - rmin / rstep + 1)
|
if (list_size != rmax / rstep - rmin / rstep + 1)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
for (n = 0; n < list_size; ++n) {
|
for (n = 0; n < list_size; ++n) {
|
||||||
|
|
Loading…
Reference in a new issue