diff options
author | Dave Airlie <airlied@redhat.com> | 2012-05-05 09:47:24 +0100 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2012-05-21 12:59:20 +0100 |
commit | cc4fe613d0b0891ea9502340801b37e64301f573 (patch) | |
tree | be87cb78ca43fd065da861dbc4803211d2d1ac5b | |
parent | a45e1d6cc6f2a5f31ed737294351cfa251caa030 (diff) |
render/exa: use glyph picture accessors
use the glyph picture accessors in the X server, render and EXA code.
Reviewed-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r-- | exa/exa_glyphs.c | 6 | ||||
-rw-r--r-- | render/glyph.c | 20 | ||||
-rw-r--r-- | render/render.c | 4 |
3 files changed, 15 insertions, 15 deletions
diff --git a/exa/exa_glyphs.c b/exa/exa_glyphs.c index 2538bce01..71f750fb6 100644 --- a/exa/exa_glyphs.c +++ b/exa/exa_glyphs.c @@ -365,7 +365,7 @@ exaGlyphCacheUploadGlyph(ScreenPtr pScreen, ExaGlyphCachePtr cache, int x, int y, GlyphPtr pGlyph) { ExaScreenPriv(pScreen); - PicturePtr pGlyphPicture = GlyphPicture(pGlyph)[pScreen->myNum]; + PicturePtr pGlyphPicture = GetGlyphPicture(pGlyph, pScreen); PixmapPtr pGlyphPixmap = (PixmapPtr) pGlyphPicture->pDrawable; ExaPixmapPriv(pGlyphPixmap); @@ -544,7 +544,7 @@ exaBufferGlyph(ScreenPtr pScreen, INT16 ySrc, INT16 xMask, INT16 yMask, INT16 xDst, INT16 yDst) { ExaScreenPriv(pScreen); - unsigned int format = (GlyphPicture(pGlyph)[pScreen->myNum])->format; + unsigned int format = (GetGlyphPicture(pGlyph, pScreen))->format; int width = pGlyph->info.width; int height = pGlyph->info.height; ExaCompositeRectPtr rect; @@ -586,7 +586,7 @@ exaBufferGlyph(ScreenPtr pScreen, /* Couldn't find the glyph in the cache, use the glyph picture directly */ - mask = GlyphPicture(pGlyph)[pScreen->myNum]; + mask = GetGlyphPicture(pGlyph, pScreen); if (buffer->mask && buffer->mask != mask) return ExaGlyphNeedFlush; diff --git a/render/glyph.c b/render/glyph.c index a9dddaf57..acb573fe6 100644 --- a/render/glyph.c +++ b/render/glyph.c @@ -90,7 +90,6 @@ GlyphUninit(ScreenPtr pScreen) PictureScreenPtr ps = GetPictureScreen(pScreen); GlyphPtr glyph; int fdepth, i; - int scrno = pScreen->myNum; for (fdepth = 0; fdepth < GlyphFormatNum; fdepth++) { if (!globalGlyphs[fdepth].hashSet) @@ -99,9 +98,9 @@ GlyphUninit(ScreenPtr pScreen) for (i = 0; i < globalGlyphs[fdepth].hashSet->size; i++) { glyph = globalGlyphs[fdepth].table[i].glyph; if (glyph && glyph != DeletedGlyph) { - if (GlyphPicture(glyph)[scrno]) { - FreePicture((pointer) GlyphPicture(glyph)[scrno], 0); - GlyphPicture(glyph)[scrno] = NULL; + if (GetGlyphPicture(glyph, pScreen)) { + FreePicture((pointer) GetGlyphPicture(glyph, pScreen), 0); + SetGlyphPicture(glyph, pScreen, NULL); } (*ps->UnrealizeGlyph) (pScreen, glyph); } @@ -239,8 +238,8 @@ FreeGlyphPicture(GlyphPtr glyph) for (i = 0; i < screenInfo.numScreens; i++) { ScreenPtr pScreen = screenInfo.screens[i]; - if (GlyphPicture(glyph)[i]) - FreePicture((pointer) GlyphPicture(glyph)[i], 0); + if (GetGlyphPicture(glyph, pScreen)) + FreePicture((pointer) GetGlyphPicture(glyph, pScreen), 0); ps = GetPictureScreenIfSet(pScreen); if (ps) @@ -363,11 +362,12 @@ AllocateGlyph(xGlyphInfo * gi, int fdepth) dixInitPrivates(glyph, (char *) glyph + head_size, PRIVATE_GLYPH); for (i = 0; i < screenInfo.numScreens; i++) { - GlyphPicture(glyph)[i] = NULL; - ps = GetPictureScreenIfSet(screenInfo.screens[i]); + ScreenPtr pScreen = screenInfo.screens[i]; + SetGlyphPicture(glyph, pScreen, NULL); + ps = GetPictureScreenIfSet(pScreen); if (ps) { - if (!(*ps->RealizeGlyph) (screenInfo.screens[i], glyph)) + if (!(*ps->RealizeGlyph) (pScreen, glyph)) goto bail; } } @@ -638,7 +638,7 @@ miGlyphs(CARD8 op, n = list->len; while (n--) { glyph = *glyphs++; - pPicture = GlyphPicture(glyph)[pScreen->myNum]; + pPicture = GetGlyphPicture(glyph, pScreen); if (pPicture) { if (maskFormat) { diff --git a/render/render.c b/render/render.c index 344ca75e2..fe7666d35 100644 --- a/render/render.c +++ b/render/render.c @@ -1136,11 +1136,11 @@ ProcRenderAddGlyphs(ClientPtr client) goto bail; } - GlyphPicture(glyph)[screen] = pDst = - CreatePicture(0, &pDstPix->drawable, + pDst = CreatePicture(0, &pDstPix->drawable, glyphSet->format, CPComponentAlpha, &component_alpha, serverClient, &error); + SetGlyphPicture(glyph, pScreen, pDst); /* The picture takes a reference to the pixmap, so we drop ours. */ |