diff options
| author | Dana Jansens <danakj@orodu.net> | 2007-05-20 22:06:03 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2007-05-20 22:06:03 +0000 |
| commit | 599b63e4713114d7e20cb49bf00788ea02bbcf7c (patch) | |
| tree | 24b1f45d7d2b24f005abb0762f34e316933f2202 /render | |
| parent | 4c7119f94fe6accb43770aba1a220bed7c627b79 (diff) | |
fix rendering argb textures on solid backgrounds
Diffstat (limited to 'render')
| -rw-r--r-- | render/render.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/render/render.c b/render/render.c index 82e6f96e..8623455f 100644 --- a/render/render.c +++ b/render/render.c @@ -40,7 +40,7 @@ static void pixel_data_to_pixmap(RrAppearance *l, Pixmap RrPaintPixmap(RrAppearance *a, gint w, gint h) { - gint i, transferred = 0, sw, sh, partial_w, partial_h; + gint i, transferred = 0, sw, sh, partial_w, partial_h, force_transfer = 0; RrPixel32 *source, *dest; Pixmap oldp = None; RrRect tarea; /* area in which to draw textures */ @@ -160,14 +160,18 @@ Pixmap RrPaintPixmap(RrAppearance *a, gint w, gint h) &a->texture[i].data.rgba, a->w, a->h, &tarea); + force_transfer = 1; break; } } if (!transferred) { transferred = 1; - if ((a->surface.grad != RR_SURFACE_SOLID) || (a->surface.interlaced)) + if ((a->surface.grad != RR_SURFACE_SOLID) || (a->surface.interlaced) || + force_transfer) + { pixel_data_to_pixmap(a, 0, 0, w, h); + } } return oldp; |
