From 94403531d5e59840c350ca63e5a2994d65dd15b2 Mon Sep 17 00:00:00 2001 From: Heeyong Song Date: Mon, 30 Aug 2021 15:44:12 +0900 Subject: [PATCH] (Vector) Check an error in SetPlayRange Change-Id: I26e2dd7d50392c911b148995cfcd81c561fea050 --- .../src/dali-toolkit/utc-Dali-AnimatedVectorImageVisual.cpp | 5 +++++ .../internal/visuals/animated-vector-image/vector-animation-task.cpp | 3 +-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/automated-tests/src/dali-toolkit/utc-Dali-AnimatedVectorImageVisual.cpp b/automated-tests/src/dali-toolkit/utc-Dali-AnimatedVectorImageVisual.cpp index 7322dbf..7f43240 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-AnimatedVectorImageVisual.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-AnimatedVectorImageVisual.cpp @@ -1590,6 +1590,10 @@ int UtcDaliAnimatedVectorImageVisualFrameDrops(void) application.GetScene().Add(actor); + Property::Map map = actor.GetProperty< Property::Map >( DummyControl::Property::TEST_VISUAL ); + Property::Value* value = map.Find( DevelImageVisual::Property::TOTAL_FRAME_NUMBER ); + int totalFrameNumber = value->Get< int >(); + Property::Map attributes; DevelControl::DoAction(actor, DummyControl::Property::TEST_VISUAL, Dali::Toolkit::DevelAnimatedVectorImageVisual::Action::PLAY, attributes); @@ -1605,6 +1609,7 @@ int UtcDaliAnimatedVectorImageVisualFrameDrops(void) // Check dropped frame uint32_t frames = Test::VectorAnimationRenderer::GetDroppedFrames(); DALI_TEST_CHECK(frames > 0); + DALI_TEST_CHECK(frames <= static_cast(totalFrameNumber)); END_TEST; } diff --git a/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-task.cpp b/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-task.cpp index 75fa62e..91bdc42 100644 --- a/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-task.cpp +++ b/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-task.cpp @@ -254,9 +254,8 @@ void VectorAnimationTask::SetPlayRange(const Property::Array& playRange) std::string marker; if(playRange.GetElementAt(0).Get(marker)) { - if(mVectorRenderer) + if(mVectorRenderer && mVectorRenderer.GetMarkerInfo(marker, startFrame, endFrame)) { - mVectorRenderer.GetMarkerInfo(marker, startFrame, endFrame); valid = true; } } -- 2.7.4