summaryrefslogtreecommitdiffstats
path: root/src/egl/main
diff options
context:
space:
mode:
authorEmil Velikov <[email protected]>2017-09-07 17:03:50 +0100
committerEmil Velikov <[email protected]>2017-09-19 19:07:16 +0100
commitb94344f1c70484d4ee59bb8765021a81fd54b366 (patch)
tree816cdafb874c1c9eafcc30f2dae86fbaa61bf54a /src/egl/main
parent5af26734793c76a2faab96c5c2c1dc6517ce6cab (diff)
egl: simplify _eglDebugReport* API
Instead of having three, almost identical but not quite, _eglDebugReport* functions, simply fold them into one. While doing so drop the unnecessary arguments 'command' and 'objectLabel'. Former is identical to funcName, while the latter is already stored (yet unused) in _EGLThreadInfo::CurrentObjectLabel. Cc: Kyle Brenneman <[email protected]> Cc: Adam Jackson <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Eric Engestrom <[email protected]> (IRC)
Diffstat (limited to 'src/egl/main')
-rw-r--r--src/egl/main/eglapi.c3
-rw-r--r--src/egl/main/eglcurrent.c53
-rw-r--r--src/egl/main/eglcurrent.h7
3 files changed, 14 insertions, 49 deletions
diff --git a/src/egl/main/eglapi.c b/src/egl/main/eglapi.c
index e3f10fcbe24..9a59d9e0c35 100644
--- a/src/egl/main/eglapi.c
+++ b/src/egl/main/eglapi.c
@@ -274,8 +274,7 @@ _eglSetFuncName(const char *funcName, _EGLDisplay *disp, EGLenum objectType, _EG
return EGL_TRUE;
}
- _eglDebugReportFull(EGL_BAD_ALLOC, funcName, funcName,
- EGL_DEBUG_MSG_CRITICAL_KHR, NULL, NULL);
+ _eglDebugReport(EGL_BAD_ALLOC, funcName, EGL_DEBUG_MSG_CRITICAL_KHR, NULL);
return EGL_FALSE;
}
diff --git a/src/egl/main/eglcurrent.c b/src/egl/main/eglcurrent.c
index df0463d70e5..db42b45309d 100644
--- a/src/egl/main/eglcurrent.c
+++ b/src/egl/main/eglcurrent.c
@@ -294,37 +294,36 @@ _eglError(EGLint errCode, const char *msg)
return EGL_FALSE;
}
-/**
- * Returns the label set for the current thread.
- */
-EGLLabelKHR
-_eglGetThreadLabel(void)
-{
- _EGLThreadInfo *t = _eglGetCurrentThread();
- return t->Label;
-}
-
-static void
-_eglDebugReportFullv(EGLenum error, const char *command, const char *funcName,
- EGLint type, EGLLabelKHR objectLabel, const char *message, va_list args)
+void
+_eglDebugReport(EGLenum error, const char *funcName,
+ EGLint type, const char *message, ...)
{
+ _EGLThreadInfo *thr = _eglGetCurrentThread();
EGLDEBUGPROCKHR callback = NULL;
+ va_list args;
+
+ if (funcName == NULL)
+ funcName = thr->CurrentFuncName;
mtx_lock(_eglGlobal.Mutex);
if (_eglGlobal.debugTypesEnabled & DebugBitFromType(type)) {
callback = _eglGlobal.debugCallback;
}
+
mtx_unlock(_eglGlobal.Mutex);
if (callback != NULL) {
char *buf = NULL;
if (message != NULL) {
+ va_start(args, message);
if (vasprintf(&buf, message, args) < 0) {
buf = NULL;
}
+
+ va_end(args);
}
- callback(error, command, type, _eglGetThreadLabel(), objectLabel, buf);
+ callback(error, funcName, type, thr->Label, thr->CurrentObjectLabel, buf);
free(buf);
}
@@ -332,29 +331,3 @@ _eglDebugReportFullv(EGLenum error, const char *command, const char *funcName,
_eglInternalError(error, funcName);
}
}
-
-void
-_eglDebugReportFull(EGLenum error, const char *command, const char *funcName,
- EGLint type, EGLLabelKHR objectLabel, const char *message, ...)
-{
- va_list args;
- va_start(args, message);
- _eglDebugReportFullv(error, command, funcName, type, objectLabel, message, args);
- va_end(args);
-}
-
-void
-_eglDebugReport(EGLenum error, const char *funcName,
- EGLint type, const char *message, ...)
-{
- _EGLThreadInfo *thr = _eglGetCurrentThread();
- va_list args;
-
- if (funcName == NULL) {
- funcName = thr->CurrentFuncName;
- }
-
- va_start(args, message);
- _eglDebugReportFullv(error, thr->CurrentFuncName, funcName, type, thr->CurrentObjectLabel, message, args);
- va_end(args);
-}
diff --git a/src/egl/main/eglcurrent.h b/src/egl/main/eglcurrent.h
index 9ec07bac8e6..d9a4a90174e 100644
--- a/src/egl/main/eglcurrent.h
+++ b/src/egl/main/eglcurrent.h
@@ -99,13 +99,6 @@ _eglGetCurrentContext(void);
extern EGLBoolean
_eglError(EGLint errCode, const char *msg);
-extern EGLLabelKHR
-_eglGetThreadLabel(void);
-
-extern void
-_eglDebugReportFull(EGLenum error, const char *command, const char *funcName,
- EGLint type, EGLLabelKHR objectLabel, const char *message, ...);
-
extern void
_eglDebugReport(EGLenum error, const char *funcName,
EGLint type, const char *message, ...);