diff options
author | Eric Anholt <eric@anholt.net> | 2006-10-26 15:47:49 -0700 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2006-10-26 15:47:49 -0700 |
commit | 25e6e497824a23eb231fc6fd6e483f601d612cee (patch) | |
tree | 85f317aff96c3ac817932fc70313c1c8ac01f4ce /src/i830_exa_render.c | |
parent | 0bdcce2e4541c6e441c44aad49254ad3093cedb2 (diff) |
Major cleanup of 3D invariant state, fixing hangs with rotation and render.exa
Now, the generic invariant state is always set while the X Server is active,
and happens automatically when the X Server grabs the DRI lock. More 3D state
is moved to the generic code.
Then, the 3D consumers (video, rotation, render) set last_3d to their enum
entry, and can update their own invariant state when another consumer was
active.
Diffstat (limited to 'src/i830_exa_render.c')
-rw-r--r-- | src/i830_exa_render.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/i830_exa_render.c b/src/i830_exa_render.c index 86e11d21..f63313f3 100644 --- a/src/i830_exa_render.c +++ b/src/i830_exa_render.c @@ -404,6 +404,8 @@ I830EXAPrepareComposite(int op, PicturePtr pSrcPicture, dst_offset = exaGetPixmapOffset(pDst); dst_pitch = exaGetPixmapPitch(pDst); + pI830->last_3d = LAST_3D_RENDER; + if (!I830TextureSetup(pSrcPicture, pSrc, 0)) I830FALLBACK("fail to setup src texture\n"); if (pMask != NULL) { |