Call widget_instance_terminate_app() when widget is not created 18/287218/1 accepted/tizen/6.0/unified/20230125.103647 submit/tizen_6.0/20230125.025939
authortscholb <scholb.kim@samsung.com>
Wed, 25 Jan 2023 02:00:05 +0000 (11:00 +0900)
committertscholb <scholb.kim@samsung.com>
Wed, 25 Jan 2023 02:00:05 +0000 (11:00 +0900)
Change-Id: I1e2a5a931cd7e23e01ef167b0801e501df21469d

widget_viewer_dali/internal/widget_view/widget_view_impl.cpp

index 63798e6588e1e504a06aa29f777b94edc1a5be20..7172412b343a2c97cfe2ae3d578bcc9d7498e104 100644 (file)
@@ -664,11 +664,23 @@ bool WidgetView::TerminateWidget()
   {
     int ret = 0;
 
-    // Destroy widget instance because it will be not used anymore.
-    ret = widget_instance_destroy( mInstanceId.c_str() );
-    if( ret < 0 )
+    if( !mCreated )
+    {
+      // If it is not created, it skips creation.
+      ret = widget_instance_terminate_app( mInstanceId.c_str() );
+      if( ret < 0 )
+      {
+        DALI_LOG_ERROR("widget_instance_terminate_app() is failed. ret:%d, id:%s \n",ret, mInstanceId.c_str());
+      }
+    }
+    else
     {
-      DALI_LOG_ERROR("widget_instance_destroy() is failed. ret:%d, id:%s \n",ret, mInstanceId.c_str());
+      // Destroy widget instance because it will be not used anymore.
+      ret = widget_instance_destroy( mInstanceId.c_str() );
+      if( ret < 0  )
+      {
+        DALI_LOG_ERROR("widget_instance_destroy() is failed. ret:%d, id:%s \n",ret, mInstanceId.c_str());
+      }
     }
 
     aul_widget_instance_del(mWidgetId.c_str(), mInstanceId.c_str());