egl/dri2: Prevent uninitialized variable dereference.
[mesa.git] / src / egl / drivers / dri2 / egl_dri2.c
index 1acec51a43370d81653b06a11981abc9c1c281d1..0e1a1b52a4cb1b06ddf9874ac8bac63f87141753 100644 (file)
@@ -205,8 +205,7 @@ dri2_add_config(_EGLDisplay *disp, const __DRIconfig *dri_config, int id,
           */
          num_configs = 0;
    }
-
-   if (num_configs == 0) {
+   else if (num_configs == 0) {
       conf = malloc(sizeof *conf);
       if (conf == NULL)
          return NULL;
@@ -224,6 +223,10 @@ dri2_add_config(_EGLDisplay *disp, const __DRIconfig *dri_config, int id,
 
       _eglLinkConfig(&conf->base);
    }
+   else {
+      assert(0);
+      return NULL;
+   }
 
    conf->base.SurfaceType |= surface_type & (!double_buffer ? EGL_PIXMAP_BIT:
          (EGL_WINDOW_BIT | EGL_PBUFFER_BIT | EGL_SWAP_BEHAVIOR_PRESERVED_BIT));