summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose Fonseca <jfonseca@vmware.com>2016-04-09 20:40:35 +0100
committerJose Fonseca <jfonseca@vmware.com>2016-04-09 20:40:35 +0100
commit200ad82015e1565ce7767300a092224b9b2b51da (patch)
treec42a35b6022ec46423dabd9987a2cecd5eafd243
parentcc5c1d6128ed4b1c0bb0338e2c3f9f118c583f76 (diff)
glretrace: Limit debug markers length to MAX_DEBUG_MESSAGE_LENGTH - 1.
Fixes https://github.com/apitrace/apitrace/issues/443
-rwxr-xr-xretrace/glretrace_main.cpp8
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, &currentContext->maxDebugMessageLength);
- assert(currentContext->maxDebugMessageLength > 0);
+ assert(currentContext->maxDebugMessageLength > 1);
}
#ifdef __APPLE__