From 586e27a77f64145dcb5878c97b2fea211e26c846 Mon Sep 17 00:00:00 2001 From: Chanwoo Choi Date: Mon, 18 Jan 2021 19:48:06 +0900 Subject: [PATCH] halapi: Fix fault by using backend instance before dlclose backend library When try to use backend->name, backend->vendor variables after dlclose(handle) of HAL backend shared library, segmentation fault happen. So that move dlclose(hanlde) at the end of hal_common_put_backend() to fix the segmentation fault. Change-Id: Icc89e26b0ff11706657f1bfdeff16eba17f255d9 Signed-off-by: Chanwoo Choi --- src/hal-api-common.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/hal-api-common.c b/src/hal-api-common.c index 896691c..b07765d 100644 --- a/src/hal-api-common.c +++ b/src/hal-api-common.c @@ -172,11 +172,14 @@ int hal_common_put_backend(enum hal_module module, void *data) } } + _I("Put HAL backend: name(%s)/vendor(%s)\n", + backend->name, backend->vendor); + if (handle) dlclose(handle); - _I("Put HAL backend: name(%s)/vendor(%s)\n", - backend->name, backend->vendor); + hal_module_info[module].library_backend = NULL; + hal_module_info[module].library_handle = NULL; return TIZEN_ERROR_NONE; } -- 2.7.4