i965: Move viewport driver hook setup to brw_init_driver_functions.
authorKenneth Graunke <kenneth@whitecape.org>
Fri, 27 Sep 2013 21:52:06 +0000 (14:52 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Sun, 13 Oct 2013 07:10:44 +0000 (00:10 -0700)
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
src/mesa/drivers/dri/i965/brw_context.c

index 19b03f8078c0c615d9a2a2d91f84f248d97998b6..63f3a1fb91b53cc716548b6e94d30361f2962a36 100644 (file)
@@ -214,6 +214,18 @@ brw_init_driver_functions(struct brw_context *brw,
 {
    _mesa_init_driver_functions(functions);
 
+   /* GLX uses DRI2 invalidate events to handle window resizing.
+    * Unfortunately, EGL does not - libEGL is written in XCB (not Xlib),
+    * which doesn't provide a mechanism for snooping the event queues.
+    *
+    * So EGL still relies on viewport hacks to handle window resizing.
+    * This should go away with DRI3000.
+    */
+   if (!brw->driContext->driScreenPriv->dri2.useInvalidate) {
+      brw->saved_viewport = functions->Viewport;
+      functions->Viewport = intel_viewport;
+   }
+
    functions->Flush = intel_glFlush;
    functions->Finish = intelFinish;
    functions->GetString = intelGetString;
@@ -651,18 +663,6 @@ intelInitContext(struct brw_context *brw,
 {
    struct gl_context *ctx = &brw->ctx;
 
-   /* GLX uses DRI2 invalidate events to handle window resizing.
-    * Unfortunately, EGL does not - libEGL is written in XCB (not Xlib),
-    * which doesn't provide a mechanism for snooping the event queues.
-    *
-    * So EGL still relies on viewport hacks to handle window resizing.
-    * This should go away with DRI3000.
-    */
-   if (!driContextPriv->driScreenPriv->dri2.useInvalidate) {
-      brw->saved_viewport = functions->Viewport;
-      functions->Viewport = intel_viewport;
-   }
-
    /* Estimate the size of the mappable aperture into the GTT.  There's an
     * ioctl to get the whole GTT size, but not one to get the mappable subset.
     * It turns out it's basically always 256MB, though some ancient hardware