Fix crash caused by not-allocated memory access 70/280470/1 accepted/tizen/unified/20220901.125823 submit/tizen/20220831.033302
authorJeongmo Yang <jm80.yang@samsung.com>
Tue, 30 Aug 2022 12:38:59 +0000 (21:38 +0900)
committerJeongmo Yang <jm80.yang@samsung.com>
Tue, 30 Aug 2022 12:40:41 +0000 (21:40 +0900)
- Minor change
 : Change log level in __send_message_get_return().

[Version] 0.4.89
[Issue Type] Bug fix

Change-Id: I8cb636009ce6a7a526e9193ba7ca5f36d7bb6704
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
packaging/capi-media-camera.spec
src/camera.c

index 51a37de..20221ad 100644 (file)
@@ -1,6 +1,6 @@
 Name:       capi-media-camera
 Summary:    A Camera API
-Version:    0.4.88
+Version:    0.4.89
 Release:    0
 Group:      Multimedia/API
 License:    Apache-2.0
index f53286b..9cbca68 100644 (file)
@@ -772,7 +772,10 @@ static void __send_message_get_return(camera_cb_info_s *cb_info, muse_camera_api
                return;
        }
 
-       CAM_LOG_INFO("api[%d], message[%s]", api, msg);
+       if (api != MUSE_CAMERA_API_RETURN_BUFFER && api != MUSE_CAMERA_API_PREVIEW_CB_RETURN)
+               CAM_LOG_INFO("api[%d], message[%s]", api, msg);
+       else
+               CAM_LOG_DEBUG("api[%d], message[%s]", api, msg);
 
        if (cb_info->is_server_connected) {
                _camera_update_api_waiting(cb_info, api, 1);
@@ -795,7 +798,10 @@ static void __send_message_get_return(camera_cb_info_s *cb_info, muse_camera_api
 
        muse_core_msg_free(msg);
 
-       CAM_LOG_INFO("api[%d] ret[0x%x]", api, ret ? *ret : 0x0);
+       if (api != MUSE_CAMERA_API_RETURN_BUFFER && api != MUSE_CAMERA_API_PREVIEW_CB_RETURN)
+               CAM_LOG_INFO("api[%d] ret[0x%x]", api, ret ? *ret : 0x0);
+       else
+               CAM_LOG_DEBUG("api[%d] ret[0x%x]", api, ret ? *ret : 0x0);
 }
 
 
@@ -6483,7 +6489,7 @@ int camera_device_manager_initialize(camera_device_manager_h *manager)
        unsigned int i = 0;
        int ret = CAMERA_ERROR_NONE;
        void *dl_handle = NULL;
-       camera_device_manager *new_manager = NULL;
+       g_autofree camera_device_manager *new_manager = g_new0(camera_device_manager, 1);
        cdm_symbol_table sym_table[] = {
                {(void **)&new_manager->initialize, "cdm_initialize"},
                {(void **)&new_manager->deinitialize, "cdm_deinitialize"},
@@ -6494,8 +6500,6 @@ int camera_device_manager_initialize(camera_device_manager_h *manager)
 
        CAMERA_CHECK_DEVICE_MANAGER;
 
-       new_manager = g_new0(camera_device_manager, 1);
-
        if (!manager) {
                CAM_LOG_ERROR("NULL manager");
                ret = CAMERA_ERROR_INVALID_PARAMETER;
@@ -6526,17 +6530,17 @@ int camera_device_manager_initialize(camera_device_manager_h *manager)
        }
 
        new_manager->dl_handle = dl_handle;
-       *manager = (camera_device_manager_h)new_manager;
+       *manager = (camera_device_manager_h)g_steal_pointer(&new_manager);
 
        CAM_LOG_INFO("camera device manager[%p](dl handle[%p]) initialized",
-               new_manager, dl_handle);
+               *manager, dl_handle);
 
        return CAMERA_ERROR_NONE;
 
 _INITIALIZE_FAILED:
        if (dl_handle)
                dlclose(dl_handle);
-       g_free(new_manager);
+
        return ret;
 }