summaryrefslogtreecommitdiff
path: root/src/egl/main
diff options
context:
space:
mode:
authorChia-I Wu <olv@lunarg.com>2010-02-17 16:42:30 +0800
committerChia-I Wu <olv@lunarg.com>2010-02-17 20:00:11 +0800
commit3dee01a692796496b6e3d6ff6e4ebac10b594640 (patch)
treedfb182a1c01e6f3678805ae52420a22e62825814 /src/egl/main
parentaed7358e54fd143033d240c6e543d403da2d7336 (diff)
egl: Always record error code.
The error code denotes the success or failure of the most recent function call. A call to _eglError should always update the error code.
Diffstat (limited to 'src/egl/main')
-rw-r--r--src/egl/main/eglcurrent.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/egl/main/eglcurrent.c b/src/egl/main/eglcurrent.c
index 989c19a2fa..c697bf796d 100644
--- a/src/egl/main/eglcurrent.c
+++ b/src/egl/main/eglcurrent.c
@@ -248,19 +248,20 @@ _eglGetCurrentContext(void)
/**
- * Record EGL error code.
+ * Record EGL error code and return EGL_FALSE.
*/
EGLBoolean
_eglError(EGLint errCode, const char *msg)
{
_EGLThreadInfo *t = _eglGetCurrentThread();
- const char *s;
if (t == &dummy_thread)
return EGL_FALSE;
- if (t->LastError == EGL_SUCCESS) {
- t->LastError = errCode;
+ t->LastError = errCode;
+
+ if (errCode != EGL_SUCCESS) {
+ const char *s;
switch (errCode) {
case EGL_BAD_ACCESS: