summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Hourihane <alanh@tungstengraphics.com>2005-08-14 12:16:51 +0000
committerAlan Hourihane <alanh@tungstengraphics.com>2005-08-14 12:16:51 +0000
commit69dc32cfac945bf664ddfbd6f0116404f893e66e (patch)
tree8ecc4f69227d40c1a67abdc3b09ebe6b827823c7
parent33f9c98aa6643abe587f71976db51d4138ccc2b9 (diff)
Add a check which compares the passed in size of the DDX driver private DRI
structure to the 3D drivers view of it, and abort if they don't match. This traps the case with the drmAddress removal in the DDX driver.
-rw-r--r--src/mesa/drivers/dri/i915/intel_screen.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i915/intel_screen.c b/src/mesa/drivers/dri/i915/intel_screen.c
index 6c3f2f5774..61166fe2a6 100644
--- a/src/mesa/drivers/dri/i915/intel_screen.c
+++ b/src/mesa/drivers/dri/i915/intel_screen.c
@@ -79,6 +79,10 @@ static GLboolean intelInitDriver(__DRIscreenPrivate *sPriv)
(PFNGLXSCRENABLEEXTENSIONPROC) (*dri_interface->getProcAddress("glxEnableExtension"));
void * const psc = sPriv->psc->screenConfigs;
+ if (sPriv->devPrivSize != sizeof(I830DRIRec)) {
+ fprintf(stderr,"\nERROR! sizeof(I830DRIRec) does not match passed size from 2D driver\n");
+ return GL_FALSE;
+ }
/* Allocate the private area */
intelScreen = (intelScreenPrivate *)CALLOC(sizeof(intelScreenPrivate));