diff options
author | José Fonseca <[email protected]> | 2010-01-16 23:21:06 +0000 |
---|---|---|
committer | José Fonseca <[email protected]> | 2010-01-16 23:21:06 +0000 |
commit | ba5d600c90f7075cf2c33a0c5c679ef822e8746e (patch) | |
tree | ec6794fba9f2fe563a8bbc03ca06e288b7f51c28 /progs/xdemos/glxheads.c | |
parent | fdfe06ad804ea13e6e436d66c1bcafe0bde2f545 (diff) | |
parent | 164fd16cfbc09970676c2e6866e062a5c9b410db (diff) |
Merge remote branch 'origin/master' into lp-binning
Conflicts:
src/gallium/drivers/llvmpipe/lp_quad.h
src/gallium/drivers/llvmpipe/lp_setup.c
Diffstat (limited to 'progs/xdemos/glxheads.c')
-rw-r--r-- | progs/xdemos/glxheads.c | 32 |
1 files changed, 29 insertions, 3 deletions
diff --git a/progs/xdemos/glxheads.c b/progs/xdemos/glxheads.c index b1a63d3d50c..edae0a3ef73 100644 --- a/progs/xdemos/glxheads.c +++ b/progs/xdemos/glxheads.c @@ -145,14 +145,40 @@ AddHead(const char *displayName) /* save the info for this head */ { struct head *h = &Heads[NumHeads]; + const char * tmp; + + if (strlen(displayName) + 1 > sizeof(h->DisplayName)) { + Error(displayName, "displayName string length overflow"); + return NULL; + } strcpy(h->DisplayName, displayName); + h->Dpy = dpy; h->Win = win; h->Context = ctx; h->Angle = 0.0; - strcpy(h->Version, (char *) glGetString(GL_VERSION)); - strcpy(h->Vendor, (char *) glGetString(GL_VENDOR)); - strcpy(h->Renderer, (char *) glGetString(GL_RENDERER)); + + tmp = (char *) glGetString(GL_VERSION); + if (strlen(tmp) + 1 > sizeof(h->Version)) { + Error(displayName, "GL_VERSION string length overflow"); + return NULL; + } + strcpy(h->Version, tmp); + + tmp = (char *) glGetString(GL_VENDOR); + if (strlen(tmp) + 1 > sizeof(h->Vendor)) { + Error(displayName, "GL_VENDOR string length overflow"); + return NULL; + } + strcpy(h->Vendor, tmp); + + tmp = (char *) glGetString(GL_RENDERER); + if (strlen(tmp) + 1 > sizeof(h->Renderer)) { + Error(displayName, "GL_RENDERER string length overflow"); + return NULL; + } + strcpy(h->Renderer, tmp); + NumHeads++; return &Heads[NumHeads-1]; } |