Bug 33946

Summary: Crash: Mesa checks for invalid pointer, then uses it anyway.
Product: Mesa Reporter: Gabriel M. Beddingfield <gabrbedd>
Component: OtherAssignee: Kristian Høgsberg <krh>
Status: RESOLVED FIXED QA Contact:
Severity: critical    
Priority: medium CC: idr, olvaffe
Version: 7.9   
Hardware: All   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Gabriel M. Beddingfield 2011-02-05 13:34:31 UTC
Using Mixxx 1.9.0-beta on MeeGo (Mesa 7.9.1) I got a SEGFAULT here:


   /* BEGIN: src/egl/drivers/dri2/egl_dri2.c:1548 */
   geometry_reply = xcb_get_geometry_reply (dri2_dpy->conn,
                                            geometry_cookie, &error);
   if (geometry_reply == NULL || error != NULL) {
      _eglError(EGL_BAD_ALLOC, "xcb_get_geometry");
      free(error);
      free(buffers_reply);
   }

   switch (geometry_reply->depth) {
   /* END */

The pointer returned is checked for validity... but the function does not return.  The SEGFAULT occurs at the switch() statement.
Comment 1 Ian Romanick 2011-02-07 13:52:28 UTC
Reassigning to Kristian with Chia-I Wu on CC as they've been working in this area.

It also seems that we need an EGL component in bugzilla.
Comment 2 Chia-I Wu 2011-02-20 11:27:40 UTC
This should be fixed by bf0c56522e21bd45ad3385e3115ef7eb71a7b8bf on master.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.