[Tizen] Fix to do not remove entity inside loop (Transition)
authorDaekwang Ryu <dkdk.ryu@samsung.com>
Mon, 19 Jul 2021 06:29:10 +0000 (15:29 +0900)
committerDaekwang Ryu <dkdk.ryu@samsung.com>
Mon, 19 Jul 2021 06:29:32 +0000 (15:29 +0900)
This reverts commit 26958021c74c7984db256ad61e2349ee51acd42e.

Change-Id: I881a4930e879859a0345cd12c3c06904552b1442

dali-toolkit/internal/transition/transition-base-impl.cpp

index 241eb06..ca34d77 100644 (file)
@@ -219,10 +219,11 @@ void TransitionBase::CopyTarget()
 {
   mCopiedActor = Dali::Actor::New();
   mTarget.GetParent().Add(mCopiedActor);
+
   mCopiedActor[Dali::DevelActor::Property::SIBLING_ORDER] = static_cast<int32_t>(mTarget[Dali::DevelActor::Property::SIBLING_ORDER]) + 1;
-  for(uint32_t i = 0; i < mTarget.GetChildCount(); ++i)
+  while(mTarget.GetChildCount() > 0)
   {
-    Dali::Actor child = mTarget.GetChildAt(i);
+    Dali::Actor child = mTarget.GetChildAt(0);
     Dali::DevelActor::SwitchParent(child, mCopiedActor);
   }
 
@@ -238,9 +239,9 @@ void TransitionBase::TransitionFinished()
   mTarget.SetProperties(mOriginalPropertyMap);
   if(mMoveTargetChildren)
   {
-    for(uint32_t i = 0; i < mCopiedActor.GetChildCount(); ++i)
+    while(mCopiedActor.GetChildCount() > 0)
     {
-      Dali::Actor child = mCopiedActor.GetChildAt(i);
+      Dali::Actor child = mCopiedActor.GetChildAt(0);
       Dali::DevelActor::SwitchParent(child, mTarget);
     }
     mCopiedActor.Unparent();