Change-Id: I2884953db2effa50dba896973c7110523944e832
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
TBM_ERR("error: fail to tbm_bo_alloc_with_format fmt(%s) idx(%d) w(%d) h(%d) mem_types(%s)\n",
FOURCC_STR(format), bo_idx, width, height, _tbm_flag_to_str(flags));
_tbm_set_last_result(TBM_ERROR_OUT_OF_MEMORY);
TBM_ERR("error: fail to tbm_bo_alloc_with_format fmt(%s) idx(%d) w(%d) h(%d) mem_types(%s)\n",
FOURCC_STR(format), bo_idx, width, height, _tbm_flag_to_str(flags));
_tbm_set_last_result(TBM_ERROR_OUT_OF_MEMORY);
- _tbm_bufmgr_mutex_unlock();
- return NULL;
}
_tbm_util_check_bo_cnt(bufmgr);
}
_tbm_util_check_bo_cnt(bufmgr);
TBM_ERR("error: not supported tbm_bo_alloc_with_format\n");
_tbm_set_last_result(TBM_ERROR_NOT_SUPPORTED);
TBM_ERR("error: not supported tbm_bo_alloc_with_format\n");
_tbm_set_last_result(TBM_ERROR_NOT_SUPPORTED);
- free(bo);
- _tbm_bufmgr_mutex_unlock();
- return NULL;
- if (bufmgr->use_hal_tbm)
+ if (bufmgr->use_hal_tbm) {
bo_data = (tbm_backend_bo_data *)hal_tbm_bufmgr_alloc_bo_with_format(bufmgr->hal_bufmgr,
format, bo_idx, width, height, (hal_tbm_bo_memory_type)flags, (hal_tbm_error *)error);
bo_data = (tbm_backend_bo_data *)hal_tbm_bufmgr_alloc_bo_with_format(bufmgr->hal_bufmgr,
format, bo_idx, width, height, (hal_tbm_bo_memory_type)flags, (hal_tbm_error *)error);
+ if (!bo_data) {
+ TBM_ERR("error: fail to tbm_bo_alloc_with_format\n");
+ _tbm_set_last_result(*error);
+ goto bo_alloc_fail;
+ }
+ } else {
bo_data = bufmgr->bufmgr_func->bufmgr_alloc_bo_with_format(bufmgr->bufmgr_data, format, bo_idx,
width, height, flags, error);
bo_data = bufmgr->bufmgr_func->bufmgr_alloc_bo_with_format(bufmgr->bufmgr_data, format, bo_idx,
width, height, flags, error);
- if (!bo_data) {
- TBM_ERR("error: fail to tbm_bo_alloc_with_format fmt(%s) idx(%d) w(%d) h(%d) mem_types(%s)\n",
- FOURCC_STR(format), bo_idx, width, height, _tbm_flag_to_str(flags));
- _tbm_set_last_result(*error);
- free(bo);
- _tbm_bufmgr_mutex_unlock();
- return NULL;
+ if (!bo_data) {
+ TBM_ERR("error: fail to tbm_bo_alloc_with_format fmt(%s) idx(%d) w(%d) h(%d) mem_types(%s)\n",
+ FOURCC_STR(format), bo_idx, width, height, _tbm_flag_to_str(flags));
+ _tbm_set_last_result(*error);
+ goto bo_alloc_fail;
+ }
_tbm_bufmgr_mutex_unlock();
return bo;
_tbm_bufmgr_mutex_unlock();
return bo;
+
+bo_alloc_fail:
+ free(bo);
+calloc_fail:
+ _tbm_bufmgr_mutex_unlock();
+ return NULL;