[cairo] cairo-glesv2 and pango: CAIRO_STATUS_DEVICE_ERROR

Christopher Pahl c.pahl at germanbionic.com
Mon Jul 1 12:01:51 UTC 2019

Hello dear cairo devs,

I need your help troubleshooting what possibly could be a bug in cairo.

I'm developing an embedded UI that uses cairo for drawing its contents and
pango for layouting text.
For hardware acceleration I'm planning to use the cairo-gl surface backend
(--enable-glesv2 to be exact), since that
is supported well on the target hardware (RaPi 3b+) and showed promising
results overall on first tests (big kudos for that!)
The UI will run inside a weston compositor, as native wayland client, using
EGL to get a OpenGL ES 2.0 context.

Sadly, I get pretty weird behavior related to font rendering. There are
three possible states:

- The UI totally works. This was mostly the case only when development
- The UI refuses to start, every call to cairo_show_text() or
- The UI starts, but everything drawn before the text calls is blacked out,
only the elements drawn after are visible.

I tried to put a minimal example of this here:


The behavior is the same on my development machine and on the target
hardware. Now, here's the catch:

If I compile cairo with --enable-glesv3, everything works perfectly fine on
my machine (except that glesv3 does not make sense on the Pi...)
I'm happy to provide more data if required, but I'm a bit stuck here on
what to try. It would be very nice if you could push me in the right

For reference:

- both cairo 1.16 and latest cairo master from git show the same issue
- I'm using weston 6.0.0
- I'm using pango 1.43.0 and freetype 2.10.0

Best regards,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cairographics.org/archives/cairo/attachments/20190701/8c88a9fa/attachment.html>

More information about the cairo mailing list