xf86-video-intel: src/i830_driver.c

Eric Anholt anholt at kemper.freedesktop.org
Mon Oct 15 11:33:04 PDT 2007


 src/i830_driver.c |   20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

New commits:
commit d66e924680a3504aa1feb9c228145a95d1a16b1e
Author: Eric Anholt <eric at anholt.net>
Date:   Mon Oct 15 11:31:51 2007 -0700

    In update_front_offset(), set pScrn->fbOffset even at EnterVT during init.
    
    Failure to do so led to the memset() at EnterVT being done to an invalid
    offset.

diff --git a/src/i830_driver.c b/src/i830_driver.c
index bfc006a..1d4e154 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -793,21 +793,21 @@ i830_update_front_offset(ScrnInfoPtr pScrn)
    ScreenPtr pScreen = pScrn->pScreen;
    I830Ptr pI830 = I830PTR(pScrn);
 
-   /* If we are still in ScreenInit, there is no screen pixmap to be updated
-    * yet.  We'll fix it up at CreateScreenResources.
-    */
-   if (pI830->starting)
-      return;
-
    /* Update buffer locations, which may have changed as a result of
     * i830_bind_all_memory().
     */
    pScrn->fbOffset = pI830->front_buffer->offset;
-   if (!pScreen->ModifyPixmapHeader(pScreen->GetScreenPixmap(pScreen),
-				    -1, -1, -1, -1, -1,
-				    (pointer)(pI830->FbBase +
-					      pScrn->fbOffset)))
+
+   /* If we are still in ScreenInit, there is no screen pixmap to be updated
+    * yet.  We'll fix it up at CreateScreenResources.
+    */
+   if (!pI830->starting) {
+      if (!pScreen->ModifyPixmapHeader(pScreen->GetScreenPixmap(pScreen),
+				       -1, -1, -1, -1, -1,
+				       (pointer)(pI830->FbBase +
+						 pScrn->fbOffset)))
        FatalError("Couldn't adjust screen pixmap\n");
+   }
 }
 
 /**


More information about the xorg-commit mailing list