X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fcore%2Fshader.cpp;h=9950e4970e913a7aba25aed333ecb044c7c8bdc3;hp=02dcc0dcff789fe142f9b47d4bde5ad2e48fe7fa;hb=dccad64b2ec82249d850b9745614042171499972;hpb=ede0bc3f5c7124ef100576ad4b0890c9cd13c79d diff --git a/source/core/shader.cpp b/source/core/shader.cpp index 02dcc0dc..9950e497 100644 --- a/source/core/shader.cpp +++ b/source/core/shader.cpp @@ -42,7 +42,8 @@ void Shader::init(GLenum t) Shader::~Shader() { - glDeleteShader(id); + if(id) + glDeleteShader(id); } void Shader::source(unsigned count, const char **str, const int *len) @@ -74,6 +75,13 @@ void Shader::compile() #endif } +unsigned Shader::steal_id() +{ + unsigned result = id; + id = 0; + return result; +} + string Shader::get_info_log() const { GLsizei len = get_shader_i(id, GL_INFO_LOG_LENGTH);