From 62696de4165489a982ada540f01db590458da0f3 Mon Sep 17 00:00:00 2001 From: SooChan Lim Date: Fri, 11 Jun 2021 15:32:28 +0900 Subject: [PATCH] tbm_backend: fix the handle casting. use tbm_modlue instead of tbm_bufmgr in libtbm because of refactoring of tbm_module. Change-Id: I600299e09eef8facbbc9b7d4c5dbfd10bc70f540 --- src/tbm_backend.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/tbm_backend.c b/src/tbm_backend.c index 4c9ce19..4da842c 100644 --- a/src/tbm_backend.c +++ b/src/tbm_backend.c @@ -95,7 +95,10 @@ tbm_backend_bufmgr_register_bufmgr_func(tbm_bufmgr bufmgr, tbm_backend_bufmgr_fu TBM_RETURN_VAL_IF_FAIL(bufmgr, TBM_ERROR_INVALID_PARAMETER); TBM_RETURN_VAL_IF_FAIL(func, TBM_ERROR_INVALID_PARAMETER); - bufmgr->bufmgr_func = func; + // The tbm_bufmgr from backend module is actually tbm_module memory in libtbm. + // libtbm initializes module init with this tbm_module which is casted with tbm_bufmgr. + tbm_module *module = (tbm_module *)bufmgr; + module->bufmgr_func = func; return TBM_ERROR_NONE; } @@ -134,7 +137,10 @@ tbm_backend_bufmgr_register_bo_func(tbm_bufmgr bufmgr, tbm_backend_bo_func *func TBM_RETURN_VAL_IF_FAIL(bufmgr, TBM_ERROR_INVALID_PARAMETER); TBM_RETURN_VAL_IF_FAIL(func, TBM_ERROR_INVALID_PARAMETER); - bufmgr->bo_func = func; + // The tbm_bufmgr from backend module is actually tbm_module memory in libtbm. + // libtbm initializes module init with this tbm_module which is casted with tbm_bufmgr. + tbm_module *module = (tbm_module *)bufmgr; + module->bo_func = func; return TBM_ERROR_NONE; } -- 2.7.4