char * GLProgram::logForOpenGLObject(GLuint object, GLInfoFunction infoFunc, GLLogFunction logFunc) { GLint logLength = 0, charsWritten = 0; infoFunc(object, GL_INFO_LOG_LENGTH, &logLength); if (logLength < 1) return NULL; char *logBytes = (char *)malloc(logLength); logFunc(object, logLength, &charsWritten, logBytes); return (logBytes); }
static char* cxShaderLogFunc(GLuint object, cxOpenGLInfoFunc infoFunc, cxOpenGLLogFunc logFunc) { GLint logLength = 0, writeBytes = 0; infoFunc(object, GL_INFO_LOG_LENGTH, &logLength); if (logLength < 1){ return NULL; } char *logBytes = (char*)allocator->malloc(logLength + 1); logFunc(object, logLength, &writeBytes, logBytes); logBytes[logLength] = '\0'; return logBytes; }