From db38a65b022cd11892034d6882d643fd46d618c8 Mon Sep 17 00:00:00 2001 From: Antony Riakiotakis Date: Mon, 20 Jul 2015 14:37:22 +0200 Subject: Filter the debug callback to only report errors unless debug value is 20. stderr was getting flooded with too many error messages, most of which were not really relevant. --- source/blender/gpu/intern/gpu_debug.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'source/blender') diff --git a/source/blender/gpu/intern/gpu_debug.c b/source/blender/gpu/intern/gpu_debug.c index 3066467517a..b9a22882133 100644 --- a/source/blender/gpu/intern/gpu_debug.c +++ b/source/blender/gpu/intern/gpu_debug.c @@ -163,11 +163,16 @@ const char* gpuErrorString(GLenum err) #endif -static void APIENTRY gpu_debug_proc(GLenum UNUSED(source), GLenum UNUSED(type), GLuint UNUSED(id), +static void APIENTRY gpu_debug_proc(GLenum source, GLenum type, GLuint UNUSED(id), GLenum UNUSED(severity), GLsizei UNUSED(length), const GLchar *message, GLvoid *UNUSED(userParm)) { - fprintf(stderr, "GL: %s\n", message); + if (source == GL_DEBUG_SOURCE_API && type == GL_DEBUG_TYPE_ERROR) + fprintf(stderr, "GL: %s\n", message); + else if (G.debug_value == 20) { + fprintf(stderr, "GL: %s\n", message); + } + fflush(stderr); } -- cgit v1.2.3