diff options
author | Ian Romanick <[email protected]> | 2004-03-26 02:02:48 +0000 |
---|---|---|
committer | Ian Romanick <[email protected]> | 2004-03-26 02:02:48 +0000 |
commit | 3623579e43b4c3a8d2eb7edb6efaa6f178279ec9 (patch) | |
tree | 805742389c1e00372ff151805bbd8a6d87045893 /src/mesa/drivers/dri/mach64 | |
parent | 301e55c6cd27e50a9186f096a974321b6df2c511 (diff) |
Make sure drivers don't dereference a NULL pointer if
__driUtilCreateNewScreen returns NULL.
Diffstat (limited to 'src/mesa/drivers/dri/mach64')
-rw-r--r-- | src/mesa/drivers/dri/mach64/mach64_screen.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/mesa/drivers/dri/mach64/mach64_screen.c b/src/mesa/drivers/dri/mach64/mach64_screen.c index fa1c1515433..6ef16c11b27 100644 --- a/src/mesa/drivers/dri/mach64/mach64_screen.c +++ b/src/mesa/drivers/dri/mach64/mach64_screen.c @@ -538,16 +538,16 @@ void * __driCreateNewScreen( Display *dpy, int scrn, __DRIscreen *psc, ddx_version, dri_version, drm_version, frame_buffer, pSAREA, fd, internal_api_version, &mach64API); - - - create_context_modes = - (PFNGLXCREATECONTEXTMODES) glXGetProcAddress( (const GLubyte *) "__glXCreateContextModes" ); - if ( create_context_modes != NULL ) { - ATIDRIPtr dri_priv = (ATIDRIPtr) psp->pDevPriv; - *driver_modes = mach64FillInModes( dri_priv->cpp * 8, - 16, - 0, - 1); + if ( psp != NULL ) { + create_context_modes = (PFNGLXCREATECONTEXTMODES) + glXGetProcAddress( (const GLubyte *) "__glXCreateContextModes" ); + if ( create_context_modes != NULL ) { + ATIDRIPtr dri_priv = (ATIDRIPtr) psp->pDevPriv; + *driver_modes = mach64FillInModes( dri_priv->cpp * 8, + 16, + 0, + 1); + } } return (void *) psp; |