diff options
author | marha <marha@users.sourceforge.net> | 2013-08-01 13:25:23 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2013-08-01 13:25:23 +0200 |
commit | c3d3ea464f7f4e53e8fe3e11ecada36cb209ba4d (patch) | |
tree | f86937d9126b2d543ffd13f861a1271f48bd69e6 /mesalib/src/mesa/main/shaderapi.c | |
parent | acad661e29a4f09d06f829fdfea949814da57da6 (diff) | |
parent | 0659c77949b38440a2a9ba67e1ee9cacef1f3a7f (diff) | |
download | vcxsrv-c3d3ea464f7f4e53e8fe3e11ecada36cb209ba4d.tar.gz vcxsrv-c3d3ea464f7f4e53e8fe3e11ecada36cb209ba4d.tar.bz2 vcxsrv-c3d3ea464f7f4e53e8fe3e11ecada36cb209ba4d.zip |
Merge remote-tracking branch 'origin/released'
* origin/released:
libX11 mesa xserver xkeyboard-config git update 1 aug 2013
Diffstat (limited to 'mesalib/src/mesa/main/shaderapi.c')
-rw-r--r-- | mesalib/src/mesa/main/shaderapi.c | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/mesalib/src/mesa/main/shaderapi.c b/mesalib/src/mesa/main/shaderapi.c index 4cc0357b1..c349b0cb5 100644 --- a/mesalib/src/mesa/main/shaderapi.c +++ b/mesalib/src/mesa/main/shaderapi.c @@ -71,7 +71,9 @@ get_shader_flags(void) const char *env = _mesa_getenv("MESA_GLSL"); if (env) { - if (strstr(env, "dump")) + if (strstr(env, "dump_on_error")) + flags |= GLSL_DUMP_ON_ERROR; + else if (strstr(env, "dump")) flags |= GLSL_DUMP; if (strstr(env, "log")) flags |= GLSL_LOG; @@ -783,10 +785,17 @@ compile_shader(struct gl_context *ctx, GLuint shaderObj) } - if (sh->CompileStatus == GL_FALSE && - (ctx->Shader.Flags & GLSL_REPORT_ERRORS)) { - _mesa_debug(ctx, "Error compiling shader %u:\n%s\n", - sh->Name, sh->InfoLog); + if (!sh->CompileStatus) { + if (ctx->Shader.Flags & GLSL_DUMP_ON_ERROR) { + fprintf(stderr, "GLSL source for %s shader %d:\n", + _mesa_glsl_shader_target_name(sh->Type), sh->Name); + fprintf(stderr, "%s\n", sh->Source); + } + + if (ctx->Shader.Flags & GLSL_REPORT_ERRORS) { + _mesa_debug(ctx, "Error compiling shader %u:\n%s\n", + sh->Name, sh->InfoLog); + } } } |