mirror of
https://github.com/X11Libre/xf86-video-ati.git
synced 2026-03-24 01:24:43 +00:00
Properly let radeon_cs_flush_indirect() re-emit 2D state if necessary.
Also remove a superfluous assignment.
This commit is contained in:
@@ -222,7 +222,6 @@ FUNC_NAME(RADEONSolid)(PixmapPtr pPix, int x1, int y1, int x2, int y2)
|
||||
if (info->cs && CS_FULL(info->cs)) {
|
||||
FUNC_NAME(RADEONDone2D)(info->accel_state->dst_pix);
|
||||
radeon_cs_flush_indirect(pScrn);
|
||||
FUNC_NAME(Emit2DState)(pScrn, RADEON_2D_EXA_SOLID);
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -333,7 +332,6 @@ FUNC_NAME(RADEONCopy)(PixmapPtr pDst,
|
||||
if (info->cs && CS_FULL(info->cs)) {
|
||||
FUNC_NAME(RADEONDone2D)(info->accel_state->dst_pix);
|
||||
radeon_cs_flush_indirect(pScrn);
|
||||
FUNC_NAME(Emit2DState)(pScrn, RADEON_2D_EXA_COPY);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
@@ -84,8 +84,8 @@ void radeon_cs_flush_indirect(ScrnInfoPtr pScrn)
|
||||
if (ret)
|
||||
ErrorF("space check failed in flush\n");
|
||||
|
||||
if (info->reemit_current2d)
|
||||
info->reemit_current2d(pScrn, 0);
|
||||
if (info->reemit_current2d && info->state_2d.op)
|
||||
info->reemit_current2d(pScrn, info->state_2d.op);
|
||||
if (info->dri2.enabled) {
|
||||
info->accel_state->XInited3D = FALSE;
|
||||
info->accel_state->engineMode = EXA_ENGINEMODE_UNKNOWN;
|
||||
@@ -169,7 +169,6 @@ static void RADEONBlockHandler_KMS(int i, pointer blockData,
|
||||
if (info->VideoTimerCallback)
|
||||
(*info->VideoTimerCallback)(pScrn, currentTime.milliseconds);
|
||||
|
||||
info->accel_state->engineMode = EXA_ENGINEMODE_UNKNOWN;
|
||||
radeon_cs_flush_indirect(pScrn);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user