[Tizen] Support Ecore-Wayland2
[platform/core/uifw/dali-adaptor.git] / dali / internal / adaptor / tizen / adaptor-impl-tizen.cpp
index 19cdb68..e9c44e4 100644 (file)
 
 // EXTERNAL INCLUDES
 #include <app_common.h>
+#include <system_settings.h>
+
 #ifdef APPCORE_WATCH_AVAILABLE
 #include <screen_connector_provider.h>
-#ifdef ECORE_WL2
-#include <dali/integration-api/wayland/ecore-wl2/ecore-wl2-render-surface.h>
-#else
-#include <dali/integration-api/wayland/ecore-wl/ecore-wl-render-surface.h>
 #endif
+
+#ifdef ECORE_WAYLAND2
+#include <Ecore_Wl2.h>
+#else
+#include <Ecore_Wayland.h>
 #endif
 
-#include <system_settings.h>
 
 namespace Dali
 {
@@ -107,13 +109,18 @@ void Adaptor::SurfaceInitialized()
   char *appId;
   app_get_id(&appId);
 
-#ifdef ECORE_WL2
-  Ecore_Wl2_Window* ecoreWlWindow = AnyCast<Ecore_Wl2_Window*>( mNativeWindow );
-  screen_connector_provider_remote_enable(appId, ecore_wl2_window_surface_get(ecoreWlWindow));
+  // Use strdup() in app_get_id(), so need to free memory
+  if( appId )
+  {
+#ifdef ECORE_WAYLAND2
+    Ecore_Wl2_Window* ecoreWlWindow = AnyCast<Ecore_Wl2_Window*>( mNativeWindow );
+    screen_connector_provider_remote_enable( appId, ecore_wl2_window_surface_get( ecoreWlWindow ) );
 #else
-  Ecore_Wl_Window* ecoreWlWindow = AnyCast<Ecore_Wl_Window*>( mNativeWindow );
-  screen_connector_provider_remote_enable(appId, ecore_wl_window_surface_get(ecoreWlWindow));
+    Ecore_Wl_Window* ecoreWlWindow = AnyCast<Ecore_Wl_Window*>( mNativeWindow );
+    screen_connector_provider_remote_enable( appId, ecore_wl_window_surface_get( ecoreWlWindow ) );
 #endif
+    free( appId );
+  }
 #endif
 }