On Wed, 2009-04-01 at 18:29 -0700, Ian Romanick wrote: > This is part of the fix for DRI2 front-buffer rendering. > > Signed-off-by: Ian Romanick <ian.d.roman...@intel.com> > --- > src/mesa/drivers/dri/intel/intel_context.c | 10 ++++++++-- > 1 files changed, 8 insertions(+), 2 deletions(-) > > diff --git a/src/mesa/drivers/dri/intel/intel_context.c > b/src/mesa/drivers/dri/intel/intel_context.c > index 2e76e93..0aa1c18 100644 > --- a/src/mesa/drivers/dri/intel/intel_context.c > +++ b/src/mesa/drivers/dri/intel/intel_context.c > @@ -223,8 +223,10 @@ intel_update_renderbuffers(__DRIcontext *context, > __DRIdrawable *drawable) > screen = intel->intelScreen->driScrnPriv; > > i = 0; > - if (intel_fb->color_rb[0]) > + if (intel_fb->color_rb[0]) { > + attachments[i++] = __DRI_BUFFER_FAKE_FRONT_LEFT; > attachments[i++] = __DRI_BUFFER_FRONT_LEFT; > + } > if (intel_fb->color_rb[1]) > attachments[i++] = __DRI_BUFFER_BACK_LEFT; > if (intel_get_renderbuffer(&intel_fb->Base, BUFFER_DEPTH)) > @@ -261,8 +263,12 @@ intel_update_renderbuffers(__DRIcontext *context, > __DRIdrawable *drawable) > for (i = 0; i < count; i++) { > switch (buffers[i].attachment) { > case __DRI_BUFFER_FRONT_LEFT: > + rb = NULL; > + break; > + > + case __DRI_BUFFER_FAKE_FRONT_LEFT: > rb = intel_fb->color_rb[0]; > - region_name = "dri2 front buffer"; > + region_name = "dri2 fake front buffer"; > break; > > case __DRI_BUFFER_BACK_LEFT:
This breaks GLX_EXT_texture_from_pixmap - the real front buffer is needed for that (pixmaps/pbuffers in general?). OTOH I think we shouldn't really need to get information about the real front buffer if we use the fake front buffer. I think have_front and corresponding checks could be removed from src/glx/x11/dri2_glx.c. Also: intel_context.c: In function ‘intel_update_renderbuffers’: intel_context.c:188: warning: ‘region_name’ may be used uninitialized in this function -- Earthling Michel Dänzer | http://www.vmware.com Libre software enthusiast | Debian, X and DRI developer ------------------------------------------------------------------------------ _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mesa3d-dev