I think the issue will be:
diff --git a/src/sna/gen4_render.c b/src/sna/gen4_render.c index 00518d4..d08d762 100644 --- a/src/sna/gen4_render.c +++ b/src/sna/gen4_render.c @@ -654,9 +654,12 @@ start: goto flush; }
- if (unlikely(sna->render.vertex_offset == 0 && - !gen4_rectangle_begin(sna, op))) - goto flush; + if (unlikely(sna->render.vertex_offset == 0)) { + if (!gen4_rectangle_begin(sna, op)) + goto flush; + else + goto start; + }
assert(op->floats_per_rect >= vertex_space(sna)); assert(rem <= vertex_space(sna));
I think the issue will be:
diff --git a/src/sna/ gen4_render. c b/src/sna/ gen4_render. c gen4_render. c gen4_render. c
goto flush;
index 00518d4..d08d762 100644
--- a/src/sna/
+++ b/src/sna/
@@ -654,9 +654,12 @@ start:
}
- if (unlikely( sna->render. vertex_ offset == 0 && _begin( sna, op))) sna->render. vertex_ offset == 0)) { rectangle_ begin(sna, op))
- !gen4_rectangle
- goto flush;
+ if (unlikely(
+ if (!gen4_
+ goto flush;
+ else
+ goto start;
+ }
assert(rem <= vertex_space(sna));