diff --git a/src/i830_accel.c b/src/i830_accel.c index 953a73b..944eb50 100644 --- a/src/i830_accel.c +++ b/src/i830_accel.c @@ -213,6 +213,9 @@ I830EmitFlush(ScrnInfoPtr pScrn) I830Ptr pI830 = I830PTR(pScrn); int flags = MI_WRITE_DIRTY_STATE | MI_INVALIDATE_MAP_CACHE; + if (pI830->noAccel) + return; + if (IS_I965G(pI830)) flags = 0; diff --git a/src/i830_driver.c b/src/i830_driver.c index 088989d..2a40247 100644 --- a/src/i830_driver.c +++ b/src/i830_driver.c @@ -2374,6 +2374,9 @@ I830BlockHandler(int i, pScreen->BlockHandler = I830BlockHandler; I830VideoBlockHandler(i, blockData, pTimeout, pReadmask); + + if (!pI830->noAccel && !pI830->leaving) + I830EmitFlush(pScrn); } static void