From: Michel Dänzer Date: Wed, 7 Mar 2007 17:01:39 +0000 (+0100) Subject: i915tex: Set framebuffer size to match window before calling _mesa_make_current. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=fb3410297bb21a0eeda4d32698c2612f4e3cf40e;p=mesa.git i915tex: Set framebuffer size to match window before calling _mesa_make_current. Fixes issues with apps that don't call glViewport by default. --- diff --git a/src/mesa/drivers/dri/i915tex/intel_context.c b/src/mesa/drivers/dri/i915tex/intel_context.c index b1352a766ef..b8515fe9b84 100644 --- a/src/mesa/drivers/dri/i915tex/intel_context.c +++ b/src/mesa/drivers/dri/i915tex/intel_context.c @@ -580,6 +580,16 @@ intelMakeCurrent(__DRIcontextPrivate * driContextPriv, } } + /* set GLframebuffer size to match window, if needed */ + if (intel_fb->Base.Width != driDrawPriv->w) { + _mesa_resize_framebuffer(&intel->ctx, &intel_fb->Base, + driDrawPriv->w, driDrawPriv->h); + } + if (readFb->Width != driReadPriv->w) { + _mesa_resize_framebuffer(&intel->ctx, readFb, + driReadPriv->w, driReadPriv->h); + } + _mesa_make_current(&intel->ctx, &intel_fb->Base, readFb); /* The drawbuffer won't always be updated by _mesa_make_current: @@ -599,16 +609,6 @@ intelMakeCurrent(__DRIcontextPrivate * driContextPriv, intel_draw_buffer(&intel->ctx, &intel_fb->Base); } - - /* set initial GLframebuffer size to match window, if needed */ - if (&intel_fb->Base.Width == 0 && driDrawPriv->w) { - _mesa_resize_framebuffer(&intel->ctx, &intel_fb->Base, - driDrawPriv->w, driDrawPriv->h); - } - if (readFb->Width == 0 && driReadPriv->w) { - _mesa_resize_framebuffer(&intel->ctx, readFb, - driReadPriv->w, driReadPriv->h); - } } else { _mesa_make_current(NULL, NULL, NULL);