From 58df3eda9f7570ef563888f61ecba7572bbcc8b9 Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Thu, 18 Jun 2020 15:48:38 +0200 Subject: render/egl: print error name Allows for easier debugging. --- render/egl.c | 40 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) (limited to 'render') diff --git a/render/egl.c b/render/egl.c index 237012cb..797d8f15 100644 --- a/render/egl.c +++ b/render/egl.c @@ -51,11 +51,47 @@ static enum wlr_log_importance egl_log_importance_to_wlr(EGLint type) { } } +static const char *egl_error_str(EGLint error) { + switch (error) { + case EGL_SUCCESS: + return "EGL_SUCCESS"; + case EGL_NOT_INITIALIZED: + return "EGL_NOT_INITIALIZED"; + case EGL_BAD_ACCESS: + return "EGL_BAD_ACCESS"; + case EGL_BAD_ALLOC: + return "EGL_BAD_ALLOC"; + case EGL_BAD_ATTRIBUTE: + return "EGL_BAD_ATTRIBUTE"; + case EGL_BAD_CONTEXT: + return "EGL_BAD_CONTEXT"; + case EGL_BAD_CONFIG: + return "EGL_BAD_CONFIG"; + case EGL_BAD_CURRENT_SURFACE: + return "EGL_BAD_CURRENT_SURFACE"; + case EGL_BAD_DISPLAY: + return "EGL_BAD_DISPLAY"; + case EGL_BAD_SURFACE: + return "EGL_BAD_SURFACE"; + case EGL_BAD_MATCH: + return "EGL_BAD_MATCH"; + case EGL_BAD_PARAMETER: + return "EGL_BAD_PARAMETER"; + case EGL_BAD_NATIVE_PIXMAP: + return "EGL_BAD_NATIVE_PIXMAP"; + case EGL_BAD_NATIVE_WINDOW: + return "EGL_BAD_NATIVE_WINDOW"; + case EGL_CONTEXT_LOST: + return "EGL_CONTEXT_LOST"; + } + return "unknown error"; +} + static void egl_log(EGLenum error, const char *command, EGLint msg_type, EGLLabelKHR thread, EGLLabelKHR obj, const char *msg) { _wlr_log(egl_log_importance_to_wlr(msg_type), - "[EGL] command: %s, error: 0x%x, message: \"%s\"", - command, error, msg); + "[EGL] command: %s, error: %s (0x%x), message: \"%s\"", + command, egl_error_str(error), error, msg); } static bool check_egl_ext(const char *exts, const char *ext) { -- cgit v1.2.3