From 570d7f17fb6444790be301b3f4128f91d3a31e32 Mon Sep 17 00:00:00 2001 From: tobid7 Date: Wed, 26 Jun 2024 09:24:15 +0200 Subject: [PATCH] Fix Possible Issue --- include/renderd7/Image.hpp | 1 + source/Image.cpp | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/include/renderd7/Image.hpp b/include/renderd7/Image.hpp index b017bdb..f01eab2 100644 --- a/include/renderd7/Image.hpp +++ b/include/renderd7/Image.hpp @@ -45,6 +45,7 @@ class Image { bool Loadet(); private: + bool ext = false; C2D_Image img; }; } // namespace RenderD7 \ No newline at end of file diff --git a/source/Image.cpp b/source/Image.cpp index 6b8ef37..e33826b 100644 --- a/source/Image.cpp +++ b/source/Image.cpp @@ -109,6 +109,7 @@ namespace RenderD7 { void Image::Load(const std::string &path) { // Make sure to cleanup Delete(); + ext = false; // Setup Func and Load Data int w, h, c = 0; unsigned char *image = stbi_load(path.c_str(), &w, &h, &c, 4); @@ -148,6 +149,7 @@ void Image::Load(const std::string &path) { void Image::From_NIMG(const nimg &image) { // Make sure to cleanup Delete(); + ext = false; if (image.width > 1024 || image.height > 1024) return; C3D_Tex *tex = new C3D_Tex; Tex3DS_SubTexture *subtex = new Tex3DS_SubTexture; @@ -171,6 +173,7 @@ C2D_Image &Image::GetRef() { void Image::Set(const C2D_Image &i) { Delete(); + ext = true; img = i; } @@ -180,6 +183,7 @@ R7Vec2 Image::GetSize() { } void Image::Delete() { + if(ext) return; if (img.subtex != nullptr) { delete img.subtex; img.subtex = nullptr;