summaryrefslogtreecommitdiff
path: root/src/glamor_triangles.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/glamor_triangles.c')
-rw-r--r--src/glamor_triangles.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/src/glamor_triangles.c b/src/glamor_triangles.c
index e0f4a97..3ae8cef 100644
--- a/src/glamor_triangles.c
+++ b/src/glamor_triangles.c
@@ -41,18 +41,12 @@ _glamor_triangles(CARD8 op,
|| glamor_ddx_fallback_check_pixmap(pSrc->pDrawable)))
return FALSE;
- if (glamor_prepare_access_picture(pDst, GLAMOR_ACCESS_RW)) {
- if (glamor_prepare_access_picture(pSrc,
- GLAMOR_ACCESS_RO)) {
-
- fbTriangles(op, pSrc, pDst, maskFormat, xSrc,
- ySrc, ntris, tris);
-
- glamor_finish_access_picture(pSrc, GLAMOR_ACCESS_RO);
- }
-
- glamor_finish_access_picture(pDst, GLAMOR_ACCESS_RW);
+ if (glamor_prepare_access_picture(pDst, GLAMOR_ACCESS_RW) &&
+ glamor_prepare_access_picture(pSrc, GLAMOR_ACCESS_RO)) {
+ fbTriangles(op, pSrc, pDst, maskFormat, xSrc, ySrc, ntris, tris);
}
+ glamor_finish_access_picture(pSrc);
+ glamor_finish_access_picture(pDst);
return TRUE;
}