From 8969751f4a1d24081620fed52b923417b72fe3c6 Mon Sep 17 00:00:00 2001 From: hj kim Date: Mon, 27 Jul 2020 12:21:15 +0900 Subject: [PATCH] Use msc_push_scan_request() API instead of accessing queue directly And add parameter checking code. Change-Id: Idf9bcf412271123b00d8518483d4a4dd5db28312 --- src/scanner-v2/media-scanner-socket-v2.c | 46 +++++++++----------------------- src/scanner/media-scanner-socket.c | 2 ++ 2 files changed, 14 insertions(+), 34 deletions(-) mode change 100755 => 100644 src/scanner-v2/media-scanner-socket-v2.c mode change 100755 => 100644 src/scanner/media-scanner-socket.c diff --git a/src/scanner-v2/media-scanner-socket-v2.c b/src/scanner-v2/media-scanner-socket-v2.c old mode 100755 new mode 100644 index 94f2158..66cc0b9 --- a/src/scanner-v2/media-scanner-socket-v2.c +++ b/src/scanner-v2/media-scanner-socket-v2.c @@ -35,9 +35,7 @@ #include "media-scanner-extract-v2.h" #define SUPPORT_PARTIAL_EVENT -extern GAsyncQueue *storage_queue2; extern GAsyncQueue *scan_queue2; -extern GAsyncQueue *reg_queue2; extern GMutex scan_req_mutex2; extern GAsyncQueue *folder_extract_queue; extern int g_directory_scan_processing2; @@ -136,14 +134,12 @@ gboolean msc_receive_request(GIOChannel *src, GIOCondition condition, gpointer d { ms_comm_msg_s *recv_msg = NULL; int sockfd = MS_SOCK_NOT_ALLOCATE; - int req_num = MS_MSG_MAX; int err = -1; + MS_DBG_RETVM_IF(!src, G_SOURCE_CONTINUE, "src is invalid"); + sockfd = g_io_channel_unix_get_fd(src); - if (sockfd < 0) { - MS_DBG_ERR("sock fd is invalid!"); - return G_SOURCE_CONTINUE; - } + MS_DBG_RETVM_IF(sockfd < 0, G_SOURCE_CONTINUE, "sock fd is invalid!"); recv_msg = g_new0(ms_comm_msg_s, 1); @@ -169,45 +165,27 @@ gboolean msc_receive_request(GIOChannel *src, GIOCondition condition, gpointer d MS_DBG_SLOG("receive msg from [%d][%d] M[%.*s] S[%.*s]", recv_msg->pid, recv_msg->msg_type, MAX_MSG_SIZE, recv_msg->msg, MS_UUID_SIZE, recv_msg->storage_id); - /* copy from recived data */ - req_num = recv_msg->msg_type; - - switch (req_num) { + switch (recv_msg->msg_type) { case MS_MSG_BULK_INSERT: - { - MS_DBG_INFO("BULK INSERT"); - /* request bulk insert*/ - g_async_queue_push(reg_queue2, recv_msg); - } + msc_push_scan_request(MS_SCAN_REGISTER, recv_msg); break; case MS_MSG_DIRECTORY_SCANNING: case MS_MSG_DIRECTORY_SCANNING_NON_RECURSIVE: - { - /* this request from another apps */ - /* set the scan data for scanning thread */ - g_async_queue_push(scan_queue2, recv_msg); - } + msc_push_scan_request(MS_SCAN_DIRECTORY, recv_msg); break; case MS_MSG_STORAGE_ALL: case MS_MSG_STORAGE_PARTIAL: case MS_MSG_STORAGE_INVALID: - { - /* this request from media-server */ - g_async_queue_push(storage_queue2, recv_msg); - } + msc_push_scan_request(MS_SCAN_STORAGE, recv_msg); break; case MS_MSG_DIRECTORY_SCANNING_CANCEL: - { - __msc_remove_request(scan_queue2, recv_msg); - msc_send_result(MS_MEDIA_ERR_SCANNER_FORCE_STOP, recv_msg); - g_free(recv_msg); - } + __msc_remove_request(scan_queue2, recv_msg); + msc_send_result(MS_MEDIA_ERR_SCANNER_FORCE_STOP, recv_msg); + g_free(recv_msg); break; default: - { - MS_DBG_ERR("THIS REQUEST IS INVALID %d", req_num); - g_free(recv_msg); - } + MS_DBG_ERR("THIS REQUEST IS INVALID %d", recv_msg->msg_type); + g_free(recv_msg); break; } diff --git a/src/scanner/media-scanner-socket.c b/src/scanner/media-scanner-socket.c old mode 100755 new mode 100644 index 97d180e..053c552 --- a/src/scanner/media-scanner-socket.c +++ b/src/scanner/media-scanner-socket.c @@ -39,6 +39,8 @@ gboolean msc_receive_request(GIOChannel *src, GIOCondition condition, gpointer d int sockfd = MS_SOCK_NOT_ALLOCATE; int err = -1; + MS_DBG_RETVM_IF(!src, G_SOURCE_CONTINUE, "src is invalid"); + sockfd = g_io_channel_unix_get_fd(src); MS_DBG_RETVM_IF(sockfd < 0, G_SOURCE_CONTINUE, "sock fd is invalid!"); -- 2.7.4