uint32_t flags = 0;
struct wayland_tbm_buffer *buffer, *tmp;
struct wayland_tbm_surface_queue *queue_info = NULL, *tmp_info = NULL;
+ char debug_id[64] = {0, };
/* if the surface is the attached surface from display server,
* return the wl_buffer of the attached surface
close(bufs[i]);
}
- wl_buffer_set_user_data(wl_buffer, surface);
+ wl_buffer_set_user_data(wl_buffer, surface);
+
+ snprintf(debug_id, sizeof(debug_id), "%u", (unsigned int)wl_proxy_get_id((struct wl_proxy *)wl_buffer));
+ tbm_surface_internal_set_debug_data(surface, "id", debug_id);
#ifdef DEBUG_TRACE
WL_TBM_TRACE(" pid:%d wl_buffer:%p tbm_surface:%p\n", getpid(), wl_buffer, surface);
WL_TBM_RETURN_IF_FAIL(tbm_client != NULL);
WL_TBM_RETURN_IF_FAIL(wl_buffer != NULL);
+ tbm_surface_h surface = NULL;
+
// TODO: valid check if the buffer is from this tbm_client???
#ifdef DEBUG_TRACE
WL_TBM_TRACE(" pid:%d wl_buffer:%p\n", getpid(), wl_buffer);
#endif
+ surface = wl_buffer_get_user_data(wl_buffer);
+ if (surface)
+ tbm_surface_internal_set_debug_data(surface, "id", NULL);
+
wl_buffer_set_user_data(wl_buffer, NULL);
wl_buffer_destroy(wl_buffer);
}
{
struct wayland_tbm_surface_queue *queue_info = data;
struct wayland_tbm_buffer *buffer;
+ char debug_id[64] = {0, };
buffer = calloc(1, sizeof(struct wayland_tbm_buffer));
wl_list_init(&buffer->link);
wl_proxy_set_queue((struct wl_proxy *)buffer->wl_buffer, NULL);
wl_list_insert(&queue_info->attach_bufs, &buffer->link);
+ snprintf(debug_id, sizeof(debug_id), "%u", (unsigned int)wl_proxy_get_id((struct wl_proxy *)wl_buffer));
+ tbm_surface_internal_set_debug_data(buffer->tbm_surface, "id", debug_id);
+
#ifdef DEBUG_TRACE
WL_TBM_TRACE("pid:%d wl_buffer:%p tbm_surface:%p\n", getpid(), buffer->wl_buffer, buffer->tbm_surface);
#endif
{
struct wayland_tbm_surface_queue *queue_info = data;
struct wayland_tbm_buffer *buffer;
+ char debug_id[64] = {0, };
buffer = calloc(1, sizeof(struct wayland_tbm_buffer));
wl_list_init(&buffer->link);
wl_proxy_set_queue((struct wl_proxy *)buffer->wl_buffer, NULL);
wl_list_insert(&queue_info->attach_bufs, &buffer->link);
+ snprintf(debug_id, sizeof(debug_id), "%u", (unsigned int)wl_proxy_get_id((struct wl_proxy *)wl_buffer));
+ tbm_surface_internal_set_debug_data(buffer->tbm_surface, "id", debug_id);
+
#ifdef DEBUG_TRACE
WL_TBM_TRACE("pid:%d wl_buffer:%p tbm_surface:%p\n", getpid(), buffer->wl_buffer, buffer->tbm_surface);
#endif
if (tbm_buffer->destroy_cb)
tbm_buffer->destroy_cb(tbm_buffer->surface, tbm_buffer->user_data);
+ tbm_surface_internal_set_debug_data(tbm_buffer->surface, "id", NULL);
+
tbm_surface_internal_unref(tbm_buffer->surface);
free(tbm_buffer);
}
int bpp;
int numPlane;
int i;
+ char debug_id[64] = {0, };
bpp = tbm_surface_internal_get_bpp(format);
numPlane = tbm_surface_internal_get_num_planes(format);
return;
}
+ snprintf(debug_id, sizeof(debug_id), "%u", (unsigned int)wl_resource_get_id(tbm_buffer->wl_buffer));
+ tbm_surface_internal_set_debug_data(surface, "id", debug_id);
+
#ifdef DEBUG_TRACE
pid_t pid = 0; uid_t uid = 0; gid_t gid = 0;
wl_client_get_credentials(client, &pid, &uid, &gid);
int bpp;
int numPlane;
int i;
+ char debug_id[64] = {0, };
bpp = tbm_surface_internal_get_bpp(format);
numPlane = tbm_surface_internal_get_num_planes(format);
return;
}
+ snprintf(debug_id, sizeof(debug_id), "%u", (unsigned int)wl_resource_get_id(tbm_buffer->wl_buffer));
+ tbm_surface_internal_set_debug_data(surface, "id", debug_id);
+
#ifdef DEBUG_TRACE
pid_t pid = 0; uid_t uid = 0; gid_t gid = 0;
wl_client_get_credentials(client, &pid, &uid, &gid);
struct wl_resource *wl_tbm = NULL;
struct wayland_tbm_buffer *tbm_buffer = NULL;
struct wl_client *client = NULL;
+ char debug_id[64] = {0, };
WL_TBM_RETURN_VAL_IF_FAIL(cqueue != NULL, NULL);
WL_TBM_RETURN_VAL_IF_FAIL(cqueue->wl_tbm_queue != NULL, NULL);
return NULL;
}
+ snprintf(debug_id, sizeof(debug_id), "%u", (unsigned int)wl_resource_get_id(tbm_buffer->wl_buffer));
+ tbm_surface_internal_set_debug_data(surface, "id", debug_id);
+
return tbm_buffer->wl_buffer;
}