print_shader_info_log.cpp 958 B

12345678910111213141516171819202122232425262728293031
  1. // This file is part of libigl, a simple c++ geometry processing library.
  2. //
  3. // Copyright (C) 2013 Alec Jacobson <alecjacobson@gmail.com>
  4. //
  5. // This Source Code Form is subject to the terms of the Mozilla Public License
  6. // v. 2.0. If a copy of the MPL was not distributed with this file, You can
  7. // obtain one at http://mozilla.org/MPL/2.0/.
  8. #include "print_shader_info_log.h"
  9. #ifndef IGL_NO_OPENGL
  10. #include <cstdio>
  11. #include <stdlib.h>
  12. // Copyright Denis Kovacs 4/10/08
  13. IGL_INLINE void igl::print_shader_info_log(const GLuint obj)
  14. {
  15. GLint infologLength = 0;
  16. GLint charsWritten = 0;
  17. char *infoLog;
  18. // Get shader info log from opengl
  19. glGetShaderiv(obj, GL_INFO_LOG_LENGTH,&infologLength);
  20. // Only print if there is something in the log
  21. if (infologLength > 0)
  22. {
  23. infoLog = (char *)malloc(infologLength);
  24. glGetShaderInfoLog(obj, infologLength, &charsWritten, infoLog);
  25. printf("%s\n",infoLog);
  26. free(infoLog);
  27. }
  28. }
  29. #endif