On Mon, Jan 7, 2013 at 5:06 AM, Jorge Ramirez Ortiz, HCL Europe <jorge.ramirez-or...@hcl.com> wrote: > Hi all, > > Does this patch make sense? glVersion can be NULL and not having the changes > below could cause a SIGSEGV > > [jramirez@calypso-2 mesa-demos.git (tmp *)]$ git diff src/xdemos/glxinfo.c > diff --git a/src/xdemos/glxinfo.c b/src/xdemos/glxinfo.c > index aa6430d..97b6539 100644 > --- a/src/xdemos/glxinfo.c > +++ b/src/xdemos/glxinfo.c > @@ -639,7 +639,7 @@ print_screen_info(Display *dpy, int scrnum, Bool > allowDirect, Bool limits, Bool > printf("OpenGL renderer string: %s\n", glRenderer); > printf("OpenGL version string: %s\n", glVersion); > #ifdef GL_VERSION_2_0 > - if (glVersion[0] >= '2' && glVersion[1] == '.') { > + if (glVersion && glVersion[0] >= '2' && glVersion[1] == '.') { > char *v = (char *) glGetString(GL_SHADING_LANGUAGE_VERSION); > printf("OpenGL shading language version string: %s\n", v); > }
Normally, this is a good idea. However, glVersion is already dereferenced in the printf on the previous line. So, any actual checking for NULL glVersion should at least come earlier in the function. On the other hand, returning NULL from glGetString(GL_VERSION) might be so rare that bothering to guard for it would be more effort than it's worth. -- Dan _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev