#include <widget_instance.h>
#include <tzplatform_config.h>
#include <wayland-extension/tizen-extension-client-protocol.h>
+#include <tbm_surface_internal.h>
#include <unistd.h>
#include <libintl.h>
if( preBuffer != NULL && tizen_remote_surface_get_version( surface ) >= TIZEN_REMOTE_SURFACE_RELEASE_SINCE_VERSION )
{
tizen_remote_surface_release( surface, preBuffer );
+ tbm_surface_h preTbmSurface = (tbm_surface_h)wl_buffer_get_user_data( preBuffer );
+ tbm_surface_internal_unref( preTbmSurface );
+ wl_buffer_destroy( preBuffer );
}
preBuffer = buffer;
{
if( mWatcherHandle != NULL )
{
+ if( preBuffer != NULL && tizen_remote_surface_get_version( mRemoteSurface ) >= TIZEN_REMOTE_SURFACE_RELEASE_SINCE_VERSION )
+ {
+ tizen_remote_surface_release( mRemoteSurface, preBuffer );
+ tbm_surface_h preTbmSurface = (tbm_surface_h)wl_buffer_get_user_data( preBuffer );
+ tbm_surface_internal_unref( preTbmSurface );
+ wl_buffer_destroy( preBuffer );
+ preBuffer = NULL;
+ }
+
screen_connector_toolkit_remove( mWatcherHandle );
mWatcherHandle = NULL;
mRemoteSurface = NULL;