diff --git a/spine-cpp/spine-cpp/include/spine/Atlas.h b/spine-cpp/spine-cpp/include/spine/Atlas.h index e720417d2..eebbd25a2 100644 --- a/spine-cpp/spine-cpp/include/spine/Atlas.h +++ b/spine-cpp/spine-cpp/include/spine/Atlas.h @@ -112,10 +112,6 @@ public: /// @return The region, or NULL. AtlasRegion *findRegion(const String &name); - void dispose(); - - - private: Vector _pages; Vector _regions; diff --git a/spine-cpp/spine-cpp/src/spine/Atlas.cpp b/spine-cpp/spine-cpp/src/spine/Atlas.cpp index 648376fd6..69caca872 100644 --- a/spine-cpp/spine-cpp/src/spine/Atlas.cpp +++ b/spine-cpp/spine-cpp/src/spine/Atlas.cpp @@ -69,6 +69,11 @@ Atlas::Atlas(const char *data, int length, const char *dir, TextureLoader *textu } Atlas::~Atlas() { + if (_textureLoader) { + for (size_t i = 0, n = _pages.size(); i < n; ++i) { + _textureLoader->unload(_pages[i]->rendererObject); + } + } ContainerUtil::cleanUpVectorOfPointers(_pages); ContainerUtil::cleanUpVectorOfPointers(_regions); } @@ -92,13 +97,6 @@ AtlasRegion *Atlas::findRegion(const String &name) { return NULL; } -void Atlas::dispose() { - if (!_textureLoader) return; - for (size_t i = 0, n = _pages.size(); i < n; ++i) { - _textureLoader->unload(_pages[i]->rendererObject); - } -} - void Atlas::load(const char *begin, int length, const char *dir) { static const char *formatNames[] = {"", "Alpha", "Intensity", "LuminanceAlpha", "RGB565", "RGBA4444", "RGB888", "RGBA8888"};