FontAtlas::~FontAtlas() { #if CC_ENABLE_CACHE_TEXTURE_DATA FontFreeType* fontTTf = dynamic_cast<FontFreeType*>(_font); if (fontTTf) { auto eventDispatcher = Director::getInstance()->getEventDispatcher(); if (_toForegroundListener) { eventDispatcher->removeEventListener(_toForegroundListener); _toForegroundListener = nullptr; } if (_toBackgroundListener) { eventDispatcher->removeEventListener(_toBackgroundListener); _toBackgroundListener = nullptr; } } #endif _font->release(); relaseTextures(); delete []_currentPageData; }
FontAtlas::~FontAtlas() { #if CC_ENABLE_CACHE_TEXTURE_DATA if (_fontFreeType && _rendererRecreatedListener) { auto eventDispatcher = Director::getInstance()->getEventDispatcher(); eventDispatcher->removeEventListener(_rendererRecreatedListener); _rendererRecreatedListener = nullptr; } #endif _font->release(); relaseTextures(); delete []_currentPageData; #if CC_TARGET_PLATFORM != CC_PLATFORM_WIN32 && CC_TARGET_PLATFORM != CC_PLATFORM_WINRT && CC_TARGET_PLATFORM != CC_PLATFORM_ANDROID if (_iconv) { iconv_close(_iconv); _iconv = nullptr; } #endif }