#include <Ecore_Wayland.h>
#include <wayland-extension/tizen-extension-client-protocol.h>
#include <tizen-remote-surface-client-protocol.h>
+#include <tbm_surface.h>
+#include <tbm_surface_internal.h>
#include "screen_connector_toolkit.h"
#include "screen_connector_toolkit_evas.h"
char format[] = "png";
char plug_id[256];
screen_connector_toolkit_evas_h toolkit_evas_h;
+ tbm_surface_h pre_tbm_surface;
toolkit_evas_h = (screen_connector_toolkit_evas_h)data;
if (toolkit_evas_h->img_tbm == NULL) {
}
if (toolkit_evas_h->pre_buffer) {
- if (tizen_remote_surface_get_version(trs) >= TIZEN_REMOTE_SURFACE_RELEASE_SINCE_VERSION)
+ if (tizen_remote_surface_get_version(trs) >= TIZEN_REMOTE_SURFACE_RELEASE_SINCE_VERSION) {
tizen_remote_surface_release(trs, toolkit_evas_h->pre_buffer);
+ pre_tbm_surface = (tbm_surface_h)wl_buffer_get_user_data(toolkit_evas_h->pre_buffer);
+ tbm_surface_internal_unref(pre_tbm_surface);
+ wl_buffer_destroy(toolkit_evas_h->pre_buffer);
+ }
}
toolkit_evas_h->pre_buffer = tbm;
#include <Ecore_Wayland.h>
#include <wayland-extension/tizen-extension-client-protocol.h>
#include <tizen-remote-surface-client-protocol.h>
+#include <tbm_surface.h>
+#include <tbm_surface_internal.h>
#include "screen_connector_watcher.h"
#include "screen_connector_watcher_evas.h"
char format[] = "png";
screen_connector_watcher_evas_h watcher_evas_h = (screen_connector_watcher_evas_h)data;
img_info_h info;
+ tbm_surface_h pre_tbm_surface;
if (tbm == NULL && type == TIZEN_REMOTE_SURFACE_BUFFER_TYPE_TBM) {
LOGE("TBM is null !! %d, %s, %s", TIZEN_REMOTE_SURFACE_BUFFER_TYPE_TBM, appid, instance_id);
}
if (info->pre_buffer) {
- if (tizen_remote_surface_get_version(trs) >= TIZEN_REMOTE_SURFACE_RELEASE_SINCE_VERSION)
+ if (tizen_remote_surface_get_version(trs) >= TIZEN_REMOTE_SURFACE_RELEASE_SINCE_VERSION) {
tizen_remote_surface_release(trs, info->pre_buffer);
+ pre_tbm_surface = (tbm_surface_h)wl_buffer_get_user_data(info->pre_buffer);
+ tbm_surface_internal_unref(pre_tbm_surface);
+ wl_buffer_destroy(info->pre_buffer);
+ }
}
info->pre_buffer = tbm;
close(img_file_fd); /* close passed fd */