X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;ds=sidebyside;f=dali-toolkit%2Finternal%2Fvisuals%2Fanimated-vector-image%2Fvector-rasterize-thread.cpp;h=08cad3187c56fdc9f90895a07b61e42111e51236;hb=374298ffaa32c7c4bef9ba379d366e33588529c4;hp=a640b19cccb819063e6c3c40879294a4beca9313;hpb=313392fb575a7b9bf3657d2091adc77adc7eb3ca;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git 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 a640b19..08cad31 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 @@ -20,10 +20,10 @@ // EXTERNAL INCLUDES #include -#include #include #include #include +#include namespace Dali { @@ -76,15 +76,15 @@ void VectorRasterizeThread::SetCompletedCallback( CallbackBase* callback ) void VectorRasterizeThread::AddTask( VectorAnimationTaskPtr task ) { + // Lock while adding task to the queue + ConditionalWait::ScopedLock lock( mConditionalWait ); + if( !mIsThreadStarted ) { Start(); mIsThreadStarted = true; } - // Lock while adding task to the queue - ConditionalWait::ScopedLock lock( mConditionalWait ); - if( mRasterizeTasks.end() == std::find( mRasterizeTasks.begin(), mRasterizeTasks.end(), task ) ) { mRasterizeTasks.push_back( task );