From 21f3638c7df02c50ec01a45cc27b26cb0908b5b7 Mon Sep 17 00:00:00 2001 From: MrLetsplay2003 Date: Wed, 13 Sep 2023 20:51:10 +0200 Subject: [PATCH] Improve Texture::genColor, Resource::loadResource --- src/kekengine/cpp/render/texture.cpp | 19 +++++++++++++------ src/kekengine/cpp/util/resource.cpp | 2 +- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/src/kekengine/cpp/render/texture.cpp b/src/kekengine/cpp/render/texture.cpp index 5aa4b70..83812e6 100644 --- a/src/kekengine/cpp/render/texture.cpp +++ b/src/kekengine/cpp/render/texture.cpp @@ -70,13 +70,20 @@ std::shared_ptr Texture::load(std::string texturePath) { } std::shared_ptr Texture::generateColor(glm::vec3 color) { - unsigned char *data = (unsigned char *) malloc(3 * sizeof(unsigned char)); - data[0] = (unsigned char) (color.x * 255); - data[1] = (unsigned char) (color.y * 255); - data[2] = (unsigned char) (color.z * 255); - float borderColor[4] = {color.x, color.y, color.z, 1.0f}; + unsigned char data[3] = { + (unsigned char) (color.x * 255), + (unsigned char) (color.y * 255), + (unsigned char) (color.z * 255), + }; + + float borderColor[4] = { + color.x, + color.y, + color.z, + 1.0f, + }; + GLuint tex = allocTexture(data, 1, 1, borderColor); - free(data); return std::make_shared(tex); } diff --git a/src/kekengine/cpp/util/resource.cpp b/src/kekengine/cpp/util/resource.cpp index 3ed5420..cb2418f 100644 --- a/src/kekengine/cpp/util/resource.cpp +++ b/src/kekengine/cpp/util/resource.cpp @@ -43,7 +43,7 @@ MemoryBuffer *loadResource(std::string path) { return nullptr; } - void *buf = malloc(h.size); + void *buf = calloc(1, h.size); r = mtar_read_data(&resources, buf, h.size); if(r != MTAR_ESUCCESS) { std::cerr << "Failed to read resource '" << path << "': " << mtar_strerror(r) << std::endl;