| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
0a82fadcdd0b6ebbc345c7c302da0e0efce40a98 seems to trigger a bug in
_eglBindContext. Rework the logics yet again. It is simpler, and
hopefully correct this time.
|
|
|
|
|
|
| |
There is no effective changes given how the function is called. It is
still not trivial, but it should be more readable and resemble
_eglBindContextToThread a lot.
|
|
|
|
|
|
| |
When a newly bound context is the same as the previously bound one,
_eglBindContextToThread should still return the context instead of NULL.
This gives the driver a chance to flush the context.
|
|
|
|
| |
Signed-off-by: Ian Romanick <[email protected]>
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
It was added to skip checking EGLDisplay, EGLSurface, and etc. It is
never defined and the spec does not allow the checks to be skipped.
Remove it for good.
|
| |
|
|
|
|
| |
Just follow gcc's advices here.
|
|
|
|
|
|
| |
The macros give warnings when compiled with -pedantic. This commit is
based on a patch by Brian Paul, with minor changes to add do {} while(0)
and rename the check macros.
|
|
|
|
|
| |
Lock the global mutex in _eglPreloadDrivers and _eglAllocScreenHandle.
Add comments to why certain pathes do not need locking.
|
|
|
|
|
|
|
| |
This gives a simple access control to the display. It is potentially
slow, but a finer grained mutex can always be used in the future. The
benefit of this simple approach is that drivers need not to worry about
thread-safety.
|
|
|
|
|
| |
Merge _eglNewDisplay and _eglLinkDisplay into _eglFindDisplay. Remove
unused _eglUnlinkDisplay.
|
|
|
|
|
| |
A display may be shared by multiple threads. Add a mutex for access
control.
|
|
|
|
|
|
| |
Use macros to record the status of the function call before returning.
This is the only way that eglGetError can return the status of the most
recent function call.
|
|
|
|
|
| |
The error code denotes the success or failure of the most recent
function call. A call to _eglError should always update the error code.
|
|
|
|
| |
Replace all uses of _EGL_DECLARE_* and _eglCheck* by _EGL_CHECK_*.
|
|
|
|
|
|
| |
Add _EGL_CHECK_* which will replace _EGL_DECLARE_* for error checking.
Move _eglCheck* earlier in the file so that the macros and the functions
are grouped together.
|
|
|
|
| |
Small optimization.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Running pkg-config in Makefiles is bad form, since it doesn't respect the
PKG_CONFIG_PATH value set at ./configure time.
|
| |
|
| |
|
| |
|
|
|
|
| |
It might be desirable find out which attribute went wrong.
|
|
|
|
|
| |
Update the comments to macros/functions. Remove unused
_eglSetConfigAttrib.
|
|
|
|
|
|
|
| |
egl_xdri steals code from src/glx/x11/. This makes it broken from time
to time when there is a bigger change to the GLX code. As egl_dri2 has
been merged, which also functions as a DRI2 driver loader, remove
egl_xdri for good.
|
|
|
|
|
| |
Put a note that the macros define functions and should not be ended with
a semicolon when used.
|
|
|
|
| |
It saves the driver from defining the boring typecasts itself.
|
|
|
|
|
|
| |
Both a link and a binding creates a reference to the resource. Drivers
should not destroy the resource when there is a reference. The
difference is better described in doc/egl.html.
|
|
|
|
| |
A linked resource is stil owned by the display.
|
|
|
|
|
| |
The subtraction between two pointers has type unsigned int (only on
x86-64?), while the format string expects an int.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Use macros to define the standard typecasts. This saves lots of
typings.
|
|
|
|
|
|
|
|
|
|
| |
There are standard typecast functions that are common to most drivers.
They are used to typecast, for example, an _EGLSurface to a
driver-defined type.
This commits define _EGL_DRIVER_STANDARD_TYPECASTS and
_EGL_DRIVER_TYPECAST that should hopefully save some typings for driver
writers.
|
| |
|
|
|
|
|
|
|
| |
Rename _eglPreloadFile to _eglLoaderFile, and _eglPreloadFile to
_eglLoaderFile. There are several _eglPreload* functions. The
callbacks do not belong to them and it should be better to give them a
different prefix.
|
|
|
|
|
| |
The driver suffix might be NULL on some platforms. Perform the matching
only when there is a suffix.
|
|
|
|
|
| |
There were some refactorings with the addition of EGL_DRIVERS_PATH.
They made some platform #ifdef's unnecessary.
|
|
|
|
|
| |
Specifically, ignore EGL_DRIVERS_PATH when an application is
setuid/setgid. And ignore EGL_DRIVER when there is a slash in it.
|
|
|
|
|
|
|
|
|
| |
EGL_DRIVERS_PATH gives a list of colon-separated directories. The given
directories will be searched when preloading drivers.
This is based on Mike Stroyan's patch, which honors the variable in
_eglPreloadDisplayDrivers. It is extended to honor the variable also in
_eglPreloadUserDriver and _eglPreloadDefaultDriver in this version.
|
| |
|
|
|
|
|
|
| |
Add missing attributes and use correct types in _EGLSurface. Remove
ifdef tests that serve no purpose. Update _eglQuerySurface and
_eglSurfaceAttrib for missing queries and checks.
|