X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Fanimated-vector-image%2Fvector-rasterize-thread.cpp;h=9469daea88915f5d36db4767423bad7bf1b5fd49;hp=fead5debb835c65d6932c50855dd9acc186fd9be;hb=cd7dc06c6d16fa60bb27a2454b7e79cdf4d4d7a2;hpb=63944ff1f2c96b3d43b887d26a2b4f3ff8570474 diff --git a/dali-toolkit/internal/visuals/animated-vector-image/vector-rasterize-thread.cpp b/dali-toolkit/internal/visuals/animated-vector-image/vector-rasterize-thread.cpp index fead5de..9469dae 100644 --- a/dali-toolkit/internal/visuals/animated-vector-image/vector-rasterize-thread.cpp +++ b/dali-toolkit/internal/visuals/animated-vector-image/vector-rasterize-thread.cpp @@ -93,9 +93,6 @@ VectorRasterizeThread::~VectorRasterizeThread() ConditionalWait::ScopedLock lock( mConditionalWait ); mDestroyThread = true; mConditionalWait.Notify( lock ); - - // This should be called in the main thread to stop waiting for the dequeuable buffer. - mVectorRenderer.StopRender(); } DALI_LOG_INFO( gVectorAnimationLogFilter, Debug::Verbose, "VectorRasterizeThread::~VectorRasterizeThread: Join [%p]\n", this ); @@ -294,7 +291,7 @@ void VectorRasterizeThread::SetCurrentFrameNumber( uint32_t frameNumber ) { ConditionalWait::ScopedLock lock( mConditionalWait ); - if( frameNumber >= mStartFrame && frameNumber <= mEndFrame ) + if( frameNumber >= mStartFrame && frameNumber <= mEndFrame && mCurrentFrame != frameNumber ) { mCurrentFrame = frameNumber; mCurrentFrameUpdated = true; @@ -457,7 +454,7 @@ void VectorRasterizeThread::Rasterize() if( !resourceReady ) { - DALI_LOG_INFO( gVectorAnimationLogFilter, Debug::Verbose, "VectorRasterizeThread::Rasterize: Resource ready trigger [%p]\n", this ); + DALI_LOG_INFO( gVectorAnimationLogFilter, Debug::Verbose, "VectorRasterizeThread::Rasterize: Resource ready trigger [current = %d] [%p]\n", currentFrame, this ); mResourceReadyTrigger->Trigger(); } @@ -471,7 +468,7 @@ void VectorRasterizeThread::Rasterize() // Animation is finished mAnimationFinishedTrigger->Trigger(); - DALI_LOG_INFO( gVectorAnimationLogFilter, Debug::Verbose, "VectorRasterizeThread::Rasterize: Animation is finished [%p]\n", this ); + DALI_LOG_INFO( gVectorAnimationLogFilter, Debug::Verbose, "VectorRasterizeThread::Rasterize: Animation is finished [current = %d] [%p]\n", currentFrame, this ); } auto timeToSleepUntil = currentFrameStartTime + std::chrono::nanoseconds( mFrameDurationNanoSeconds );