Fixed crash issue when abort DB insert
authorJihoon Chung <jihoon.chung@samsung.com>
Wed, 8 May 2013 12:06:59 +0000 (21:06 +0900)
committerJihoon Chung <jihoon.chung@samsung.com>
Wed, 8 May 2013 12:10:33 +0000 (21:10 +0900)
[Issue#] N/A
[Problem] Crash is occurred when abort DB insert data
[Cause] Missing checking whether update mode or normal install mode.
That is caused that create widgetDAO which isn't exist in the database
[Solution] Add condition to check update mode.
[SCMRequest] N/A

Change-Id: I680f72a5ff21053b031af7d61a002b5834739ff4

src/jobs/widget_install/task_database.cpp

index a7b405b..e9d1b6c 100644 (file)
@@ -291,8 +291,12 @@ void TaskDatabase::StepAbortDBInsert()
     LogWarning("[DB Update Task] Aborting... (DB Clean)");
     Try
     {
-        WidgetDAO::restoreUpdateWidget(m_backAppId,
-                m_context.widgetConfig.tzAppid);
+        if (m_context.isUpdateMode) {
+            WidgetDAO::restoreUpdateWidget(m_backAppId,
+                    m_context.widgetConfig.tzAppid);
+        } else {
+            WidgetDAO::unregisterWidget(m_context.widgetConfig.tzAppid);
+        }
         LogDebug("Cleaning DB successful!");
     }
     Catch(DPL::DB::SqlConnection::Exception::Base)