Avoid overflow in 'last' variable of FindGLXFunction(...)
authorStefan Dirsch <sndirsch@suse.de>
Thu, 14 Jul 2016 13:21:20 +0000 (15:21 +0200)
committerEmil Velikov <emil.l.velikov@gmail.com>
Wed, 20 Jul 2016 15:05:17 +0000 (16:05 +0100)
commit27ef7bfd6cd2d960844f4c79d6dddc0bda0b20b0
tree64c8b92d5f5344fd3fbdeb8812e5959d8bddc490
parent9e1248d0752e692714b58ef1f2211ec7e172c8cf
Avoid overflow in 'last' variable of FindGLXFunction(...)

This 'last' variable used in FindGLXFunction(...) may become negative,
but has been defined as unsigned int resulting in an overflow,
finally resulting in a segfault when accessing _glXDispatchTableStrings[...].
Fixed this by definining it as signed int. 'first' variable also needs to be
defined as signed int. Otherwise condition for while loop fails due to C
implicitly converting signed to unsigned values before comparison.

Cc: <mesa-stable@lists.freedesktop.org>
Signed-off-by: Stefan Dirsch <sndirsch@suse.de>
Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
src/glx/glxglvnd.c