Browse Source

gl deletes must be safe to call for 0 without gl init

Kajetan Johannes Hammerle 2 years ago
parent
commit
df5fbe42a8
1 changed files with 18 additions and 6 deletions
  1. 18 6
      wrapper/GL.cpp

+ 18 - 6
wrapper/GL.cpp

@@ -192,11 +192,15 @@ Error GL::getLinkerError(Program p) {
 }
 
 void GL::deleteShader(Shader s) {
-    glDeleteShader(s);
+    if(s != 0) {
+        glDeleteShader(s);
+    }
 }
 
 void GL::deleteProgram(Program p) {
-    glDeleteProgram(p);
+    if(p != 0) {
+        glDeleteProgram(p);
+    }
 }
 
 GL::Shader GL::createShader(ShaderType type) {
@@ -262,7 +266,9 @@ GL::Texture GL::genTexture() {
 }
 
 void GL::deleteTexture(Texture t) {
-    glDeleteTextures(1, &t);
+    if(t != 0) {
+        glDeleteTextures(1, &t);
+    }
 }
 
 void GL::setNearFilter2D() {
@@ -312,7 +318,9 @@ void GL::generateMipmap2D(int maxLevels) {
 }
 
 void GL::deleteFramebuffers(Framebuffer fb) {
-    glDeleteFramebuffers(1, &fb);
+    if(fb != 0) {
+        glDeleteFramebuffers(1, &fb);
+    }
 }
 
 GL::Framebuffer GL::genFramebuffer() {
@@ -363,11 +371,15 @@ GL::Buffer GL::genBuffer() {
 }
 
 void GL::deleteBuffer(Buffer b) {
-    glDeleteBuffers(1, &b);
+    if(b != 0) {
+        glDeleteBuffers(1, &b);
+    }
 }
 
 void GL::deleteVertexArray(VertexArray va) {
-    glDeleteVertexArrays(1, &va);
+    if(va != 0) {
+        glDeleteVertexArrays(1, &va);
+    }
 }
 
 void GL::bindVertexArray(VertexArray va) {