aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/api/Texture.h
diff options
context:
space:
mode:
authorheavydemon21 <nielsstunnebrink1@gmail.com>2024-11-08 18:04:36 +0100
committerheavydemon21 <nielsstunnebrink1@gmail.com>2024-11-08 18:04:36 +0100
commitba713ba89127e3b4a24f204f67bccaa9c2972916 (patch)
tree1a1c501ac96ffa80d72f93596098b462a798600a /src/crepe/api/Texture.h
parent91a277c69fd5f8ba814adc1006a49c7415ff65be (diff)
Made it RAII
Diffstat (limited to 'src/crepe/api/Texture.h')
-rw-r--r--src/crepe/api/Texture.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/crepe/api/Texture.h b/src/crepe/api/Texture.h
index 828518d..0cacfe5 100644
--- a/src/crepe/api/Texture.h
+++ b/src/crepe/api/Texture.h
@@ -64,9 +64,11 @@ private:
void load(std::unique_ptr<Asset> res);
private:
- //TODO make RAII
+ struct TextureDeleter{
+ void operator()(SDL_Texture* texture) const { SDL_DestroyTexture(texture);}
+ };
//! The texture of the class from the library
- SDL_Texture * texture = nullptr;
+ std::unique_ptr<SDL_Texture, TextureDeleter> texture;
//! Grants SDLContext access to private members.
friend class SDLContext;