Delete YGNode only root of Flex::Node
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / devel-api / layouting / flex-node.cpp
index c3636dc..8a7dae6 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2021 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2022 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -93,9 +93,12 @@ Node::Node()
 Node::~Node()
 {
   DALI_LOG_INFO(gLogFilter, Debug::Verbose, "Destructor() >> \n");
+  // Destruct child Flex::Node first
+  mImpl->mChildNodes.clear();
+
   if(mImpl->mYogaNode)
   {
-    YGNodeFreeRecursive(mImpl->mYogaNode);
+    YGNodeFree(mImpl->mYogaNode);
     mImpl->mYogaNode = nullptr;
   }
   DALI_LOG_INFO(gLogFilter, Debug::Verbose, "Destructor() <<\n");