On 05/30/2013 07:44 AM, Paul Berry wrote:
The patch that follows will fix a bug that prevents
intel_flush_front() from being called often enough.  In doing so, it
will create a situation where intel_flush_front() during the initial
call to glXMakeCurrent().In this circumstance, ctx->DrawBuffer
hasn't been initialized yet and is NULL.  Fortunately,
intel->front_buffer_dirty is false, so intel_flush_front() doesn't
actually need to do anything.  To avoid a segfault, swap the order of
terms in intel_flush_front()'s if statement.

The sentence that begins with "In doing so" seems incomplete and I don't
understand its intent.

Other than that, these two patches are
Reviewed-by: Chad Versace <chad.vers...@linux.intel.com>

---
  src/mesa/drivers/dri/intel/intel_context.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/intel/intel_context.c 
b/src/mesa/drivers/dri/intel/intel_context.c
index 88cc247..495cc73 100644
--- a/src/mesa/drivers/dri/intel/intel_context.c
+++ b/src/mesa/drivers/dri/intel/intel_context.c
@@ -286,7 +286,7 @@ intel_flush_front(struct gl_context *ctx)
      __DRIdrawable *driDrawable = driContext->driDrawablePriv;
      __DRIscreen *const screen = intel->intelScreen->driScrnPriv;

-    if (_mesa_is_winsys_fbo(ctx->DrawBuffer) && intel->front_buffer_dirty) {
+    if (intel->front_buffer_dirty && _mesa_is_winsys_fbo(ctx->DrawBuffer)) {
        if (screen->dri2.loader->flushFrontBuffer != NULL &&
            driDrawable &&
            driDrawable->loaderPrivate) {


_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to