Revert "[Tizen](Vector) Change SetPlayRange"
authorHosang Kim <hosang12.kim@samsung.com>
Mon, 25 Jul 2022 05:57:22 +0000 (14:57 +0900)
committerHosang Kim <hosang12.kim@samsung.com>
Mon, 25 Jul 2022 05:57:22 +0000 (14:57 +0900)
This reverts commit 385560bb0a9ceecdeaba9e80cfe5491dee178efd.

dali-toolkit/internal/visuals/animated-vector-image/vector-animation-task.cpp

index 7ec4aa3..b79f422 100644 (file)
@@ -280,33 +280,38 @@ void VectorAnimationTask::SetPlayRange(const Property::Array& playRange)
   }
 
   // Make sure the range specified is between 0 and the total frame number
-  startFrame = std::min(startFrame, mTotalFrame - 1);
-  endFrame   = std::min(endFrame, mTotalFrame - 1);
-
-  // If the range is not in order swap values
-  if(startFrame > endFrame)
+  if(startFrame < mTotalFrame && endFrame < mTotalFrame)
   {
-    uint32_t temp = startFrame;
-    startFrame    = endFrame;
-    endFrame      = temp;
-  }
-
-  if(startFrame != mStartFrame || endFrame != mEndFrame)
-  {
-    mStartFrame = startFrame;
-    mEndFrame   = endFrame;
-
-    // If the current frame is out of the range, change the current frame also.
-    if(mStartFrame > mCurrentFrame)
+    // If the range is not in order swap values
+    if(startFrame > endFrame)
     {
-      mCurrentFrame = mStartFrame;
+      uint32_t temp = startFrame;
+      startFrame    = endFrame;
+      endFrame      = temp;
     }
-    else if(mEndFrame < mCurrentFrame)
+
+    if(startFrame != mStartFrame || endFrame != mEndFrame)
     {
-      mCurrentFrame = mEndFrame;
-    }
+      mStartFrame = startFrame;
+      mEndFrame   = endFrame;
 
-    DALI_LOG_INFO(gVectorAnimationLogFilter, Debug::Verbose, "VectorAnimationTask::SetPlayRange: [%d, %d] [%s] [%p]\n", mStartFrame, mEndFrame, mUrl.c_str(), this);
+      // If the current frame is out of the range, change the current frame also.
+      if(mStartFrame > mCurrentFrame)
+      {
+        mCurrentFrame = mStartFrame;
+      }
+      else if(mEndFrame < mCurrentFrame)
+      {
+        mCurrentFrame = mEndFrame;
+      }
+
+      DALI_LOG_INFO(gVectorAnimationLogFilter, Debug::Verbose, "VectorAnimationTask::SetPlayRange: [%d, %d] [%s] [%p]\n", mStartFrame, mEndFrame, mUrl.c_str(), this);
+    }
+  }
+  else
+  {
+    DALI_LOG_ERROR("VectorAnimationTask::SetPlayRange: Invalid range (%d, %d) [%s] [%p]\n", startFrame, endFrame, mUrl.c_str(), this);
+    return;
   }
 }