That will tell us whether the corruption occurs as we render the glyphs using the GPU or as we upload. Similarly working through each of the NO_* options thereafter would be very helpful to identify which path in particular is affected.
Secondly,
diff --git a/src/sna/gen4_render.c b/src/sna/gen4_render.c
index ceef528..f901008 100644
--- a/src/sna/gen4_render.c
+++ b/src/sna/gen4_render.c
@@ -1863,7 +1863,7 @@ gen4_composite_picture(struct sna *sna,
if (picture->pDrawable == NULL) {
int ret;
- if (picture->pSourcePict->type == SourcePictTypeLinear)
+ if (picture->pSourcePict->type == SourcePictTypeLinear && 0) return gen4_composite_linear_init(sna, picture, channel, x, y, w, h,
@@ -2046,7 +2046,6 @@ check_gradient(PicturePtr picture)
{
switch (picture->pSourcePict->type) {
case SourcePictTypeSolidFill:
- case SourcePictTypeLinear: return false;
default: return true;
will confirm whether is it the gradient that is implicated in this bug.
First of all lets disable acceleration of glyphs:
diff --git a/src/sna/ sna_glyphs. c b/src/sna/ sna_glyphs. c sna_glyphs. c sna_glyphs. c
index 53494e3..4e510a4 100644
--- a/src/sna/
+++ b/src/sna/
@@ -69,7 +69,7 @@
#include <mipict.h>
-#define FALLBACK 0
+#define FALLBACK 1
#define NO_GLYPH_CACHE 0
#define NO_GLYPHS_TO_DST 0
#define NO_GLYPHS_VIA_MASK 0
That will tell us whether the corruption occurs as we render the glyphs using the GPU or as we upload. Similarly working through each of the NO_* options thereafter would be very helpful to identify which path in particular is affected.
Secondly,
diff --git a/src/sna/ gen4_render. c b/src/sna/ gen4_render. c gen4_render. c gen4_render. c picture( struct sna *sna,
index ceef528..f901008 100644
--- a/src/sna/
+++ b/src/sna/
@@ -1863,7 +1863,7 @@ gen4_composite_
if (picture->pDrawable == NULL) {
int ret;
- if (picture- >pSourcePict- >type == SourcePictTypeL inear) >pSourcePict- >type == SourcePictTypeL inear && 0)
return gen4_composite_ linear_ init(sna, picture, channel,
x, y,
w, h, PicturePtr picture) >pSourcePict- >type) { olidFill: inear:
return false;
return true;
+ if (picture-
@@ -2046,7 +2046,6 @@ check_gradient(
{
switch (picture-
case SourcePictTypeS
- case SourcePictTypeL
default:
will confirm whether is it the gradient that is implicated in this bug.