void AnimatedVectorImageVisual::OnAnimationFinished()
{
+ if(DALI_UNLIKELY(mImpl == nullptr))
+ {
+ DALI_LOG_ERROR("Fatal error!! already destroyed object callback called! AnimatedVectorImageVisual : %p, url : %s\n", this, mUrl.GetUrl().c_str());
+ return;
+ }
+
DALI_LOG_INFO(gVectorAnimationLogFilter, Debug::Verbose, "AnimatedVectorImageVisual::OnAnimationFinished: action state = %d [%p]\n", mPlayState, this);
if(mPlayState != DevelImageVisual::PlayState::STOPPED)
void AnimatedVectorImageVisual::SendAnimationData()
{
+ if(DALI_UNLIKELY(mImpl == nullptr))
+ {
+ DALI_LOG_ERROR("Fatal error!! already destroyed object callback called! AnimatedVectorImageVisual : %p, url : %s\n", this, mUrl.GetUrl().c_str());
+ return;
+ }
+
if(mAnimationData.resendFlag)
{
mVectorAnimationTask->SetAnimationData(mAnimationData);
void ImageVisual::LoadComplete(bool loadingSuccess, TextureInformation textureInformation)
{
Toolkit::Visual::ResourceStatus resourceStatus;
+ if(DALI_UNLIKELY(mImpl == nullptr))
+ {
+ DALI_LOG_ERROR("Fatal error!! already destroyed object callback called! ImageVisual : %p, url : %s\n", this, mImageUrl.GetUrl().c_str());
+ return;
+ }
if(mImpl->mRenderer)
{
if(textureInformation.useAtlasing)
void SvgVisual::ApplyRasterizedImage(SvgTaskPtr task)
{
+ if(DALI_UNLIKELY(mImpl == nullptr))
+ {
+ DALI_LOG_ERROR("Fatal error!! already destroyed object callback called! SvgVisual : %p, url : %s, task : %p\n", this, mImageUrl.GetUrl().c_str(), task.Get());
+ return;
+ }
if(task->HasSucceeded())
{
PixelData rasterizedPixelData = task->GetPixelData();