[cairo] [PATCH 0/3] EGL fixes
alexandros.frantzis at linaro.org
alexandros.frantzis at linaro.org
Fri Feb 11 10:05:52 PST 2011
From: Alexandros Frantzis <alexandros.frantzis at linaro.org>
Hi all!
This patchset contains some improvements and fixes for the EGL part of
the cairo-gl backend.
The first patch is Benjamin's patch (sent some days ago to the list).
The second patch fixes the fallback path when the EGL_KHR_surfaceless_*
extension is not present. It ensures that the dummy pbuffer surface is created
using the same EGLConfig used for the supplied EGLContext. This is necessary
(at least in Mesa) in order to be able to use them together in eglMakeCurrent().
Note that there is a small catch here: the config must be suitable for a
pbuffer surface for this to work. In my experience if a config is suitable for
EGL Windows/Pixmaps it can be used for pbuffers, too. Of course, there is no
guarantee for this, but this is still better than before.
The third patch ensures that in the boilerplate code we actually get a valid
RGBA32 EGLConfig instead of just the first available one.
Two things to note:
1. To be able to use EGL_KHR_surfaceless_*, we need a fix for Mesa
https://bugs.freedesktop.org/show_bug.cgi?id=34042
Benjamin has provided a fix for this (see link) but it has not been
yet reviewed.
2. When running the testsuite with the egl target you will notice some
crashes. These happen because the cairo-gl backend cannot handle
0x0 destinations and these are not yet optimized out in the gstate.
The patches can be found in the 'egl-makecurrent-fixes' branch at:
http://git.linaro.org/gitweb?p=people/afrantzis/cairo.git;a=shortlog;h=refs/heads/egl-makecurrent-fixes
git://git.linaro.org/people/afrantzis/cairo.git
Alexandros Frantzis (2):
egl: Ensure that the dummy pbuffer surface is compatible with the
supplied context
boilerplate/egl: Ensure that we are using an RGBA32 egl config
Benjamin Franzke (1):
egl: Fix eglMakeCurrent for egl surfaces
boilerplate/cairo-boilerplate-egl.c | 17 ++++++++++++-----
src/cairo-egl-context.c | 28 +++++++++++++++++-----------
2 files changed, 29 insertions(+), 16 deletions(-)
--
1.7.2.3
More information about the cairo
mailing list