[cairo] [PATCH 0/3] EGL fixes

Benjamin Franzke benjaminfranzke at googlemail.com
Thu Feb 17 09:25:34 PST 2011


Would someone please commit these patches, or are there reasons not to do that?

Thanks, Ben

2011/2/11  <alexandros.frantzis at linaro.org>:
> 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
>
> --
> cairo mailing list
> cairo at cairographics.org
> http://lists.cairographics.org/mailman/listinfo/cairo
>


More information about the cairo mailing list