diff options
Diffstat (limited to 'src/resources')
-rw-r--r-- | src/resources/ambientlayer.cpp | 3 | ||||
-rw-r--r-- | src/resources/image.cpp | 3 | ||||
-rw-r--r-- | src/resources/spritedef.cpp | 3 |
3 files changed, 9 insertions, 0 deletions
diff --git a/src/resources/ambientlayer.cpp b/src/resources/ambientlayer.cpp index 92d9eb43e..a0f3803eb 100644 --- a/src/resources/ambientlayer.cpp +++ b/src/resources/ambientlayer.cpp @@ -74,7 +74,10 @@ AmbientLayer::AmbientLayer(Image *img, float parallax, AmbientLayer::~AmbientLayer() { if (mImage) + { mImage->decRef(); + mImage = 0; + } } void AmbientLayer::update(int timePassed, float dx, float dy) diff --git a/src/resources/image.cpp b/src/resources/image.cpp index aa5c33488..4a89ae636 100644 --- a/src/resources/image.cpp +++ b/src/resources/image.cpp @@ -828,7 +828,10 @@ SubImage::~SubImage() mGLImage = 0; #endif if (mParent) + { mParent->decRef(); + mParent = 0; + } } Image *SubImage::getSubImage(int x, int y, int w, int h) diff --git a/src/resources/spritedef.cpp b/src/resources/spritedef.cpp index 37610f659..79e665f4c 100644 --- a/src/resources/spritedef.cpp +++ b/src/resources/spritedef.cpp @@ -359,7 +359,10 @@ SpriteDef::~SpriteDef() i != mImageSets.end(); ++i) { if (i->second) + { i->second->decRef(); + i->second = 0; + } } } |