]> git.tdb.fi Git - libs/gl.git/blobdiff - source/shader.cpp
Use wrappers for single-value glGet* calls
[libs/gl.git] / source / shader.cpp
index a1c576d8b3384c87fe31ff0e677e95224f21e44b..1b3455f1aa91270c810d0494ac80c3e80b7fe051 100644 (file)
@@ -2,6 +2,7 @@
 #include <msp/gl/extensions/arb_shader_objects.h>
 #include <msp/gl/extensions/arb_vertex_shader.h>
 #include "error.h"
+#include "misc.h"
 #include "shader.h"
 
 using namespace std;
@@ -57,16 +58,14 @@ void Shader::source(const char *str, int len)
 void Shader::compile()
 {
        glCompileShader(id);
-       int value = 0;
-       glGetShaderiv(id, GL_COMPILE_STATUS, &value);
-       if(!(compiled = value))
+       compiled = get_shader_i(id, GL_COMPILE_STATUS);
+       if(!compiled)
                throw compile_error(get_info_log());
 }
 
 string Shader::get_info_log() const
 {
-       GLsizei len = 0;
-       glGetShaderiv(id, GL_INFO_LOG_LENGTH, &len);
+       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);