[tizen] Fix memory leak and for exception case. 73/171073/1
authorWonsik, Jung <sidein@samsung.com>
Mon, 26 Feb 2018 08:28:56 +0000 (17:28 +0900)
committerWonsik, Jung <sidein@samsung.com>
Mon, 26 Feb 2018 08:35:20 +0000 (17:35 +0900)
strdup() is used in app_get_resource_path() and the return value of the function is NULL sometimes.
So, this patch is to fix for two cases.

Change-Id: Ibf58a674a21bcde5a2b0ff5e0f952cd55fadadb9

dali/internal/adaptor/tizen/framework-tizen.cpp

index d934bc8..4c7e03b 100644 (file)
@@ -795,7 +795,12 @@ std::string Framework::GetResourcePath()
 {
   std::string resourcePath = "";
 #if defined( TIZEN_PLATFORM_CONFIG_SUPPORTED ) && TIZEN_PLATFORM_CONFIG_SUPPORTED
 {
   std::string resourcePath = "";
 #if defined( TIZEN_PLATFORM_CONFIG_SUPPORTED ) && TIZEN_PLATFORM_CONFIG_SUPPORTED
-  resourcePath = app_get_resource_path();
+  char* app_rsc_path = app_get_resource_path();
+  if (app_rsc_path)
+  {
+    resourcePath = app_rsc_path;
+    free(app_rsc_path);
+  }
 #else // For backwards compatibility with older Tizen versions
 
   // "DALI_APPLICATION_PACKAGE" is used to get the already configured Application package path.
 #else // For backwards compatibility with older Tizen versions
 
   // "DALI_APPLICATION_PACKAGE" is used to get the already configured Application package path.