the behavior of tdm_buffer_remove_release_handler_internal is not clear.
even if commit is failed, the buffer release function seems to need to be called.
Change-Id: Idbf92ea109272d5556680ed87212095126d8b1cf
}
}
-INTERN void
-tdm_buffer_remove_release_handler_internal(tbm_surface_h buffer)
-{
- tdm_buffer_info *buf_info;
- tdm_buffer_func_info *func_info = NULL, *next = NULL;
-
- TDM_RETURN_IF_FAIL(buffer != NULL);
-
- buf_info = tdm_buffer_get_info(buffer);
- TDM_RETURN_IF_FAIL(buf_info != NULL);
-
- LIST_FOR_EACH_ENTRY_SAFE(func_info, next, &buf_info->release_funcs, link) {
-
- LIST_DEL(&func_info->link);
- free(func_info);
-
- return;
- }
-}
-
EXTERN tbm_surface_h
tdm_buffer_ref_backend(tbm_surface_h buffer)
{
if (ret != TDM_ERROR_NONE) {
/* LCOV_EXCL_START */
- /* Not to call the user release handler when failed.
- * Do we have to call this function here really?
- * User better use set_done_handler to know when pp is done. Using
- * buffer_release_handler is not good.
- */
- tdm_buffer_remove_release_handler_internal(b->buffer);
_pthread_mutex_unlock(&private_display->lock);
tdm_buffer_unref_backend(b->buffer);
continue;
if (ret != TDM_ERROR_NONE) {
- /* Not to call the user release handler when failed.
- * Do we have to call this function here really?
- * User better use set_done_handler to know when pp is done. Using
- * buffer_release_handler is not good.
- */
- tdm_buffer_remove_release_handler_internal(b->src);
- tdm_buffer_remove_release_handler_internal(b->dst);
-
_pthread_mutex_unlock(&private_display->lock);
tdm_buffer_unref_backend(b->src);
tdm_buffer_unref_backend(b->dst);
/* utility buffer functions for private */
tdm_buffer_info*
tdm_buffer_get_info(tbm_surface_h buffer);
-void
-tdm_buffer_remove_release_handler_internal(tbm_surface_h buffer);
/* event functions for private */
tdm_error