Age | Commit message (Collapse) | Author |
|
|
|
We want to call glFlush when there is a current context. That is,
old_ctx. This is a regression introduced by
d19afc57fe49816f3f3290410e0124d326577be2.
|
|
Ensure -L$(TOP)/$(LIB_DIR) (the staging dir for build products), appears
in the link line before any -L in $LDFLAGS, so that we link driver we are
building with libEGL we have just built, and not an installed version
[olv: make a similar change to targets/egl]
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
|
|
This call sequence
eglMakeCurrent(dpy, surf, surf, ctx1);
eglMakeCurrent(dpy, surf, surf, ctx2);
should be valid if ctx1 and ctx2 have the same client API and are not
current in another thread.
|
|
Remove all _egl<Res>IsLinked and _egl<Res>IsBound. Update
_eglBindContext and drivers to do reference counting.
|
|
This is a really simple mechanism. There is no atomicity and the caller
is expected to hold the display lock.
|
|
Internally a mode belongs to a screen. But functions like
eglGetModeAttribMESA treat a mode as a display resource: a mode can be
looked up without a screen. Considering how KMS works, it is better to
stick to the current implementation.
To properly support looking up a mode without a screen, this commit
assigns each mode (of all screens) a unique ID.
|
|
Make _eglInitScreen take a display and rename _eglAddScreen to
_eglLinkScreen. Remove unused functions.
|
|
Mainly to rename _eglAddConfig to _eglLinkConfig, along with a few clean
ups.
|
|
All display resources are already initialized with a display. Linking
simply links a resource to its display.
|
|
We do not want them to be all over the places.
|
|
Avoid code duplications.
|
|
The opaque nature of EGLImage implies that extensions almost always
define their own attributes. Move attributes in _EGLImage to
_EGLImageAttribs and add a helper function to parse attribute lists.
|
|
The driver was broken since 6eda3f311bc24999835003e404d5eda5599bc5de.
All configs fail to pass _eglValidateConfig.
|
|
_EGLConfig can be directly dereferenced now. Since egl_glx is the last
user of the macros, drop the macros too.
|
|
_EGLConfig can be directly dereferenced now.
|
|
Replace SET_CONFIG_ATTRIB/GET_CONFIG_ATTRIB by direct dereferences.
|
|
This makes _EGLConfig more accessible and scales better when new
attributes are added.
|
|
Remove duplicated include.
Signed-off-by: Brian Paul <brianp@vmware.com>
|
|
Do not call into the driver if the extension for the called function is
not enabled.
|
|
I hate GCC for requiring the (int) cast on sizeof.
|
|
|
|
|
|
|
|
We will typically have a current context when we need to lookup the image,
but the lookup implementation don't need it so drop it.
|
|
We can't expect to have a context when this is called, and we don't need one
so just require a __DRIscreen instead.
Reported by Yu Dai <yu.dai@intel.com>
|
|
The main use of the backend is to support EGL_MESA_drm_display. drm
should be a better name.
|
|
Point about needing a better way to do this validated.
|
|
Allows KMS EGL driver to load. We need a better way of doing this.
|
|
Remove the hard-to-get-right _eglBindContextToSurfaces. As well as fix
an assertion failure from b90a3e7d8b1bcd412ddbf2a4803de2756dacd436 when
such call sequence is hit
eglMakeCurrent(dpy, surf1, surf1, ctx1);
eglMakeCurrent(dpy, surf2, surf2, ctx2);
eglMakeCurrent(dpy, surf1, surf1, ctx1);
|
|
In other words, skip the __GLcontextModes middle man.
|
|
This driver doesn't work with any of the DRI drivers in the source tree.
|
|
_EGL_CHECK_DISPLAY checks the display and returns from eglCreateContext
on error.
|
|
This fixes several NULL dereferences.
|
|
EGL_MESA_drm_{display,image} can achieve the same functionality.
|
|
|
|
Create EGLImages from DRM buffer handles.
|
|
The API of the context was not checked against EGL_RENDERABLE_TYPE when there
was no attribute list. Move the check to _eglInitContext, and be verbose about
common mistakes (EGL_RENDERABLE_TYPE not set, EGL_CONTEXT_CLIENT_VERSION not
set, or eglBindAPI not called).
|
|
Without the .def file, function names are decorated and cannot be
queried by GetProcAddress easily.
|
|
When _EGL_GET_CORE_ADDRESSES is defined, eglGetProcAddress can be used to query
core functions. This is non-standard, but some apps expect it.
|
|
Add new source files to SConscripts.
|
|
Individual drivers still need to support and enable the extension.
|
|
Individual drivers still need to support and enable the extension.
|
|
|
|
This allows Mesa EGL to be compiled with eglext.h that does not define
EGL_MESA_screen_surface.
|
|
|
|
|
|
|
|
These extensions allow an application to make a context current by
passing EGL_NO_SURFACE for the write and read surface in the call to
eglMakeCurrent. The motivation is that applications that only want to
render to client API targets (such as OpenGL framebuffer objects)
should not need to create a throw-away EGL surface just to get a
current context.
|
|
The function is used by _eglGetConfigs and _eglGetScreens. The array
size should not be limited by the buffer size when the buffer is NULL.
This fixes fdo bug #29052.
|