diff options
author | Jose Fonseca <jfonseca@vmware.com> | 2016-04-09 20:40:35 +0100 |
---|---|---|
committer | Jose Fonseca <jfonseca@vmware.com> | 2016-04-09 20:40:35 +0100 |
commit | 200ad82015e1565ce7767300a092224b9b2b51da (patch) | |
tree | c42a35b6022ec46423dabd9987a2cecd5eafd243 | |
parent | cc5c1d6128ed4b1c0bb0338e2c3f9f118c583f76 (diff) |
glretrace: Limit debug markers length to MAX_DEBUG_MESSAGE_LENGTH - 1.
Fixes https://github.com/apitrace/apitrace/issues/443
-rwxr-xr-x | retrace/glretrace_main.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/retrace/glretrace_main.cpp b/retrace/glretrace_main.cpp index b53a818e..2afc18f1 100755 --- a/retrace/glretrace_main.cpp +++ b/retrace/glretrace_main.cpp @@ -157,15 +157,15 @@ insertCallMarker(trace::Call &call, Context *currentContext) glfeatures::Profile currentProfile = currentContext->actualProfile(); - std::stringstream ss; + std::ostringstream ss; trace::dump(call, ss, trace::DUMP_FLAG_NO_COLOR | trace::DUMP_FLAG_NO_ARG_NAMES | trace::DUMP_FLAG_NO_MULTILINE); std::string msg = ss.str(); - GLsizei length = msg.length() > currentContext->maxDebugMessageLength - ? currentContext->maxDebugMessageLength + GLsizei length = msg.length() > currentContext->maxDebugMessageLength - 1 + ? currentContext->maxDebugMessageLength - 1 : msg.length(); auto pfnGlDebugMessageInsert = currentProfile.desktop() @@ -441,7 +441,7 @@ initContext() { currentContext->KHR_debug = currentContext->hasExtension("GL_KHR_debug"); if (currentContext->KHR_debug) { glGetIntegerv(GL_MAX_DEBUG_MESSAGE_LENGTH, ¤tContext->maxDebugMessageLength); - assert(currentContext->maxDebugMessageLength > 0); + assert(currentContext->maxDebugMessageLength > 1); } #ifdef __APPLE__ |