tbm_module: change if-statement into switch-case 01/259701/1
authorSooChan Lim <sc1.lim@samsung.com>
Thu, 10 Jun 2021 06:37:05 +0000 (15:37 +0900)
committerSooChan Lim <sc1.lim@samsung.com>
Fri, 11 Jun 2021 00:50:04 +0000 (09:50 +0900)
Change-Id: Ibba1869f6851bbc6a5a1d4074752c50b46ab7f46

src/tbm_module.c

index f490d64..eec0f34 100644 (file)
@@ -490,7 +490,8 @@ done:
 void
 tbm_module_unload(tbm_module *module)
 {
-       if (module->use_hal_tbm) {
+       switch (module->type) {
+       case TBM_MODULE_TYPE_HAL_TBM:
                if (module->auth_wl_socket_created) {
                        tbm_drm_helper_wl_auth_server_deinit();
                        close(module->auth_fd);
@@ -502,21 +503,27 @@ tbm_module_unload(tbm_module *module)
                module->hal_backend = NULL;
                module->hal_bufmgr = NULL;
                module->use_hal_tbm = 0;
-       } else {
-               if (module->backend_module_data) {
-                       module->backend_module_data->deinit(module->bufmgr_data);
-                       module->bo_func = NULL;
-                       module->bufmgr_func = NULL;
-                       module->bufmgr_data = NULL;
-                       module->backend_module_data = NULL;
-               } else {
-                       module->backend->bufmgr_deinit(module->backend->priv);
-                       module->backend->priv = NULL;
-                       tbm_backend_free(module->backend);
-                       module->backend = NULL;
-               }
+               break;
+       case TBM_MODULE_TYPE_TBM_BACKEND:
+               module->backend_module_data->deinit(module->bufmgr_data);
+               module->bo_func = NULL;
+               module->bufmgr_func = NULL;
+               module->bufmgr_data = NULL;
+               module->backend_module_data = NULL;
+
+               dlclose(module->module_data);
+               break;
+       case TBM_MODULE_TYPE_BUFMGR_BACKEND:
+               module->backend->bufmgr_deinit(module->backend->priv);
+               module->backend->priv = NULL;
+               tbm_backend_free(module->backend);
+               module->backend = NULL;
 
                dlclose(module->module_data);
+               break;
+       default:
+               TBM_ERR("Wrong module type:%d", module->type);
+               break;
        }
 
        _tbm_module_copy_data_to_bufmgr(module, module->bufmgr, 1);