From 3a7e00b3d13d9cf5852b9b1a00121c7c296e2e3f Mon Sep 17 00:00:00 2001 From: Jeongmo Yang Date: Wed, 21 Feb 2024 17:46:18 +0900 Subject: [PATCH] Replace hal_common_put_backend() with hal_common_put_backend_with_library_name() [Version] 0.0.22 [Issue Type] Bug fix Change-Id: I5229f027379e711b575f23cfb61bc6c963c7f066 Signed-off-by: Jeongmo Yang --- packaging/hal-api-camera.spec | 2 +- src/hal-api-camera.c | 13 +++++++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/packaging/hal-api-camera.spec b/packaging/hal-api-camera.spec index 52d0ddb..f63fe04 100644 --- a/packaging/hal-api-camera.spec +++ b/packaging/hal-api-camera.spec @@ -4,7 +4,7 @@ ### main package ######### Name: %{name} Summary: %{name} interface -Version: 0.0.21 +Version: 0.0.22 Release: 0 Group: Development/Libraries License: Apache-2.0 diff --git a/src/hal-api-camera.c b/src/hal-api-camera.c index 84a22e1..a7570ad 100644 --- a/src/hal-api-camera.c +++ b/src/hal-api-camera.c @@ -53,6 +53,7 @@ typedef struct _hal_camera_s { void *backend; hal_backend_camera_funcs *funcs; + gchar *hal_name; } hal_camera_s; @@ -82,13 +83,16 @@ int hal_camera_init(const char *hal_name, void **camera_handle) goto __HAL_INIT_FAILED; } + new_handle->hal_name = g_strdup(hal_name); *camera_handle = (void *)new_handle; + SLOGI("done - lib[%s]", hal_name ? hal_name : "default"); + return CAMERA_ERROR_NONE; __HAL_INIT_FAILED: if (new_handle->funcs) - hal_common_put_backend(HAL_MODULE_CAMERA, (void *)new_handle->funcs); + hal_common_put_backend_with_library_name(HAL_MODULE_CAMERA, (void *)new_handle->funcs, hal_name); g_free(new_handle); @@ -105,13 +109,18 @@ int hal_camera_deinit(void *camera_handle) HAL_CAMERA_RETURN_IF_FAILED(handle->funcs, CAMERA_ERROR_INVALID_PARAMETER); HAL_CAMERA_RETURN_IF_FAILED(handle->funcs->deinit, CAMERA_ERROR_NOT_IMPLEMENTED); + SLOGI("start - lib[%s]", handle->hal_name ? handle->hal_name : "default"); + ret = handle->funcs->deinit(handle->backend); if (ret != CAMERA_ERROR_NONE) { SLOGE("deinit failed[0x%x]", ret); return ret; } - hal_common_put_backend(HAL_MODULE_CAMERA, (void *)handle->funcs); + hal_common_put_backend_with_library_name(HAL_MODULE_CAMERA, (void *)handle->funcs, handle->hal_name); + + if (handle->hal_name) + g_free(handle->hal_name); memset(handle, 0x0, sizeof(hal_camera_s)); g_free(handle); -- 2.34.1