summaryrefslogtreecommitdiff
path: root/lib/igt_vec.c
diff options
context:
space:
mode:
authorZbigniew Kempczyński <zbigniew.kempczynski@intel.com>2020-02-07 04:27:25 +0100
committerArkadiusz Hiler <arkadiusz.hiler@intel.com>2020-02-26 15:18:43 +0200
commit4f875016eb1ebc211b8aadb280ae16c7e6cdc8ba (patch)
treea489ea074cabae13501d0f3f37b0971b685e2ed9 /lib/igt_vec.c
parent4eb25b2e923c8860076e3e0c2253a03422a354a1 (diff)
lib/igt_vec: assertion fortification
Ensure no one will pass negative index on igt_vec because it could lead to memory corruptions and weird program behavior. Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Diffstat (limited to 'lib/igt_vec.c')
-rw-r--r--lib/igt_vec.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/igt_vec.c b/lib/igt_vec.c
index 591e56fa..c6ba164b 100644
--- a/lib/igt_vec.c
+++ b/lib/igt_vec.c
@@ -41,7 +41,7 @@ void igt_vec_fini(struct igt_vec *vec)
void *igt_vec_elem(const struct igt_vec *vec, int idx)
{
- igt_assert(idx < vec->len);
+ igt_assert(idx >= 0 && idx < vec->len);
return vec->elems + idx * vec->elem_size;
}
@@ -79,7 +79,7 @@ int igt_vec_index(const struct igt_vec *vec, void *elem)
void igt_vec_remove(struct igt_vec *vec, int idx)
{
- igt_assert(idx < vec->len);
+ igt_assert(idx >= 0 && idx < vec->len);
memmove(igt_vec_elem(vec, idx),
igt_vec_elem(vec, idx + 1),