From ddf5e1632db4fb5cd2498f192a0a89bdf416e475 Mon Sep 17 00:00:00 2001 From: Thomas Harte Date: Mon, 18 Feb 2019 22:08:03 -0500 Subject: [PATCH] Ensures log memory is automatically initialised. --- Outputs/OpenGL/Primitives/Shader.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Outputs/OpenGL/Primitives/Shader.cpp b/Outputs/OpenGL/Primitives/Shader.cpp index 3c07fc236..3d2397160 100644 --- a/Outputs/OpenGL/Primitives/Shader.cpp +++ b/Outputs/OpenGL/Primitives/Shader.cpp @@ -9,6 +9,7 @@ #include "Shader.hpp" #include "../../Log.hpp" +#include using namespace Outputs::Display::OpenGL; @@ -31,10 +32,10 @@ GLuint Shader::compile_shader(const std::string &source, GLenum type) { GLint logLength; test_gl(glGetShaderiv, shader, GL_INFO_LOG_LENGTH, &logLength); if(logLength > 0) { - GLchar *log = new GLchar[std::size_t(logLength)]; - test_gl(glGetShaderInfoLog, shader, logLength, &logLength, log); - LOG("Compile log:\n" << log); - delete[] log; + const auto length = std::vector::size_type(logLength); + std::vector log(length); + test_gl(glGetShaderInfoLog, shader, logLength, &logLength, log.data()); + LOG("Compile log:\n" << log.data()); } throw (type == GL_VERTEX_SHADER) ? VertexShaderCompilationError : FragmentShaderCompilationError;