aboutsummaryrefslogtreecommitdiff
path: root/src/error.c
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2020-05-19 21:41:09 +0200
committerCharles <sircharlesaze@gmail.com>2020-05-19 21:41:09 +0200
commit3b2e7cc2347d88dbd8d7697a7cbd8354e7728fc0 (patch)
tree56cd83dca6d3627844347cc2ca86a6f6255f87d5 /src/error.c
parentb0998910dd974280b3c6f3f65e21bfd5859b117f (diff)
downloadmandelbrot-3b2e7cc2347d88dbd8d7697a7cbd8354e7728fc0.tar.gz
mandelbrot-3b2e7cc2347d88dbd8d7697a7cbd8354e7728fc0.tar.bz2
mandelbrot-3b2e7cc2347d88dbd8d7697a7cbd8354e7728fc0.zip
Added OpenGL boilerplate
Diffstat (limited to 'src/error.c')
-rw-r--r--src/error.c37
1 files changed, 36 insertions, 1 deletions
diff --git a/src/error.c b/src/error.c
index 92e3a71..1e2975f 100644
--- a/src/error.c
+++ b/src/error.c
@@ -7,7 +7,42 @@ void error_check_sdl(const char *code, const char *filename, int line_num)
err = SDL_GetError();
if (*err == '\0')
return ;
- SDL_Log("[ERROR SDL] %s\n\t(%s) at %s:%d", err, code, filename, line_num);
+ SDL_Log("[ERROR SDL] %s\n\t(%s) at %s:%d\n", err, code, filename, line_num);
SDL_Quit();
exit(EXIT_FAILURE);
}
+
+void error_clear_gl(void)
+{
+ while (glGetError() != GL_NO_ERROR)
+ ;
+}
+
+void error_check_gl(const char *code, const char *filename, int line_num)
+{
+ GLenum err;
+ bool occured;
+ char *err_str = "";
+
+ occured = false;
+ while ((err = glGetError()) != GL_NO_ERROR)
+ {
+ switch (err)
+ {
+ case GL_INVALID_OPERATION:
+ err_str = "GL_INVALID_OPERATION";
+ break;
+ case GL_INVALID_VALUE:
+ err_str = "GL_INVALID_VALUE";
+ break;
+ case GL_INVALID_ENUM:
+ err_str = "GL_INVALID_ENUM";
+ break;
+ }
+ fprintf(stderr, "[ERROR OPENGL] (%d) %s\n\t(%s) at %s:%d\n",
+ err, err_str, code, filename, line_num);
+ occured = true;
+ }
+ if (occured)
+ exit(EXIT_FAILURE);
+}