summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Janes <mark.a.janes@intel.com>2018-12-06 16:35:42 -0800
committerEmil Velikov <emil.l.velikov@gmail.com>2019-03-25 15:55:56 +0000
commitf29b229664ed181169c777f151e902a7b405611e (patch)
tree84f41714749bc3bd5cacf23e55da18b814808464
parent2c163bfe68a970a9fc323ceade7dee7feee77ae9 (diff)
mesa: properly report the length of truncated log messages
_mesa_log_msg must provide the length of the string passed into the KHR_debug api. When the string formatted by _mesa_gl_vdebugf exceeds MAX_DEBUG_MESSAGE_LENGTH, the length is incorrectly set to the number of characters that would have been written if enough space had been available. Fixes: 30256805784450b8bb9d4dabfb56226271ca9d24 ("mesa: Add support for GL_ARB_debug_output with dynamic ID allocation.") Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com> (cherry picked from commit eb1a869a5d19bfd8a0d4099afd58f180997e4663)
-rw-r--r--src/mesa/main/errors.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mesa/main/errors.c b/src/mesa/main/errors.c
index a9687913627..30560ba047e 100644
--- a/src/mesa/main/errors.c
+++ b/src/mesa/main/errors.c
@@ -231,6 +231,9 @@ _mesa_gl_vdebug(struct gl_context *ctx,
_mesa_debug_get_id(id);
len = _mesa_vsnprintf(s, MAX_DEBUG_MESSAGE_LENGTH, fmtString, args);
+ if (len >= MAX_DEBUG_MESSAGE_LENGTH)
+ /* message was truncated */
+ len = MAX_DEBUG_MESSAGE_LENGTH - 1;
_mesa_log_msg(ctx, source, type, *id, severity, len, s);
}