X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fshader.cpp;h=02dcc0dcff789fe142f9b47d4bde5ad2e48fe7fa;hb=bec07999d95b76f4b47cffcc564d0cd0afc0435e;hp=0c356f5f460826f7e97877881d15f35ba3db36f0;hpb=daf256f6dd858420233e73bf128abb3ae5801e5b;p=libs%2Fgl.git diff --git a/source/shader.cpp b/source/shader.cpp index 0c356f5f..02dcc0dc 100644 --- a/source/shader.cpp +++ b/source/shader.cpp @@ -27,6 +27,7 @@ Shader::Shader(GLenum t, const string &src) void Shader::init(GLenum t) { + static Require _req_base(ARB_shader_objects); compiled = false; if(t==GL_FRAGMENT_SHADER) @@ -76,10 +77,9 @@ void Shader::compile() string Shader::get_info_log() const { GLsizei len = get_shader_i(id, GL_INFO_LOG_LENGTH); - char *buf = new char[len+1]; - glGetShaderInfoLog(id, len+1, &len, buf); - string log(buf, len); - delete[] buf; + string log(len+1, 0); + glGetShaderInfoLog(id, len+1, &len, &log[0]); + log.erase(len); return log; }