diff options
author | Russell King <rmk@armlinux.org.uk> | 2016-11-24 23:30:57 +0000 |
---|---|---|
committer | Russell King <rmk@armlinux.org.uk> | 2016-11-24 23:34:29 +0000 |
commit | 700a8dce91d9305fa6adcc51e5096f9091f28de5 (patch) | |
tree | b6027287f99977983271134874c1319c1e65b0b4 | |
parent | 4d18f1a50de602c1c11b5228ab4b666f5017f199 (diff) |
etnaviv: stop using pict_format in glyph code
Stop explicitly using the pict_format pixmap member in most of the
glyph code, as this is not really necessary.
Signed-off-by: Russell King <rmk@armlinux.org.uk>
-rw-r--r-- | etnaviv/etnaviv_render.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/etnaviv/etnaviv_render.c b/etnaviv/etnaviv_render.c index da3369a..e0c055f 100644 --- a/etnaviv/etnaviv_render.c +++ b/etnaviv/etnaviv_render.c @@ -996,6 +996,7 @@ static Bool etnaviv_accel_Glyphs(CARD8 final_op, PicturePtr pSrc, ScreenPtr pScreen = pDst->pDrawable->pScreen; struct etnaviv *etnaviv = etnaviv_get_screen_priv(pScreen); struct etnaviv_pixmap *vMask; + struct etnaviv_format fmt; struct etnaviv_de_op op; PixmapPtr pMaskPixmap; PicturePtr pMask, pCurrent; @@ -1033,14 +1034,14 @@ static Bool etnaviv_accel_Glyphs(CARD8 final_op, PicturePtr pSrc, vMask = etnaviv_get_pixmap_priv(pMaskPixmap); /* Clear the mask to transparent */ - etnaviv_set_format(vMask, pMask); + fmt = etnaviv_set_format(vMask, pMask); box.x1 = box.y1 = 0; box.x2 = width; box.y2 = height; if (!etnaviv_fill_single(etnaviv, vMask, &box, 0)) goto destroy_picture; - op.dst = INIT_BLIT_PIX(vMask, vMask->pict_format, ZERO_OFFSET); + op.dst = INIT_BLIT_PIX(vMask, fmt, ZERO_OFFSET); op.blend_op = &etnaviv_composite_op[PictOpAdd]; op.clip = &box; op.src_origin_mode = SRC_ORIGIN_NONE; @@ -1115,6 +1116,7 @@ static void etnaviv_accel_glyph_upload(ScreenPtr pScreen, PicturePtr pDst, PixmapPtr src_pix = drawable_pixmap(pSrc->pDrawable); PixmapPtr dst_pix = drawable_pixmap(pDst->pDrawable); struct etnaviv_pixmap *vdst = etnaviv_get_pixmap_priv(dst_pix); + struct etnaviv_format fmt; struct etnaviv_de_op op; unsigned width = pGlyph->info.width; unsigned height = pGlyph->info.height; @@ -1131,8 +1133,8 @@ static void etnaviv_accel_glyph_upload(ScreenPtr pScreen, PicturePtr pDst, vpix = etnaviv_get_pixmap_priv(src_pix); if (vpix) { - etnaviv_set_format(vpix, pSrc); - op.src = INIT_BLIT_PIX(vpix, vpix->pict_format, src_offset); + fmt = etnaviv_set_format(vpix, pSrc); + op.src = INIT_BLIT_PIX(vpix, fmt, src_offset); } else { struct etnaviv_usermem_node *unode; char *buf, *src = src_pix->devPrivate.ptr; @@ -1178,12 +1180,12 @@ static void etnaviv_accel_glyph_upload(ScreenPtr pScreen, PicturePtr pDst, box.x2 = x + width; box.y2 = y + height; - etnaviv_set_format(vdst, pDst); + fmt = etnaviv_set_format(vdst, pDst); if (!etnaviv_map_gpu(etnaviv, vdst, GPU_ACCESS_RW)) return; - op.dst = INIT_BLIT_PIX(vdst, vdst->pict_format, dst_offset); + op.dst = INIT_BLIT_PIX(vdst, fmt, dst_offset); op.blend_op = NULL; op.clip = &box; op.src_origin_mode = SRC_ORIGIN_RELATIVE; |