get the libraries the right way round..
[mesa.git] / src / mesa / drivers / dri / radeon / radeon_screen.c
index 8552f2a73d46b602b832083309461a7e736f7aa7..8d26935e6befc973dc8b9cda946265f3f0d732c5 100644 (file)
@@ -323,7 +323,7 @@ radeonScreenPtr radeonCreateScreen( __DRIscreenPrivate *sPriv )
       __driUtilMessage("%s: drmMap (2) failed\n", __FUNCTION__ );
       return NULL;
    }
-   screen->scratch = (__volatile__ CARD32 *)
+   screen->scratch = (__volatile__ uint32_t *)
       ((GLubyte *)screen->status.map + RADEON_SCRATCH_REG_OFFSET);
 
    screen->buffers = drmMapBufs( sPriv->fd );
@@ -602,16 +602,16 @@ void * __driCreateNewScreen( Display *dpy, int scrn, __DRIscreen *psc,
                                  ddx_version, dri_version, drm_version,
                                  frame_buffer, pSAREA, fd,
                                  internal_api_version, &radeonAPI);
-
-
-   create_context_modes =
-       (PFNGLXCREATECONTEXTMODES) glXGetProcAddress( (const GLubyte *) "__glXCreateContextModes" );
-   if ( create_context_modes != NULL ) {
-      RADEONDRIPtr dri_priv = (RADEONDRIPtr) psp->pDevPriv;
-      *driver_modes = radeonFillInModes( dri_priv->bpp,
-                                      (dri_priv->bpp == 16) ? 16 : 24,
-                                      (dri_priv->bpp == 16) ? 0  : 8,
-                                      (dri_priv->backOffset != dri_priv->depthOffset) );
+   if ( psp != NULL ) {
+      create_context_modes = (PFNGLXCREATECONTEXTMODES)
+         glXGetProcAddress( (const GLubyte *) "__glXCreateContextModes" );
+      if ( create_context_modes != NULL ) {
+        RADEONDRIPtr dri_priv = (RADEONDRIPtr) psp->pDevPriv;
+        *driver_modes = radeonFillInModes( dri_priv->bpp,
+                                           (dri_priv->bpp == 16) ? 16 : 24,
+                                           (dri_priv->bpp == 16) ? 0  : 8,
+                                           (dri_priv->backOffset != dri_priv->depthOffset) );
+      }
    }
 
    return (void *) psp;