From: hj kim Date: Fri, 5 Apr 2019 07:23:10 +0000 (+0900) Subject: Bug fix of removing all data for command verification X-Git-Tag: accepted/tizen/unified/20190410.002041^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e0ce78c4074353d0693d1cd2a3a6e449ad1655e7;p=platform%2Fcore%2Fapi%2Fmedia-controller.git Bug fix of removing all data for command verification Change-Id: Iafaed5f04ea2dc879a65fc7448966de55d83ee31 --- diff --git a/svc/media_controller_svc.c b/svc/media_controller_svc.c index 81dfa42..f39a3c8 100644 --- a/svc/media_controller_svc.c +++ b/svc/media_controller_svc.c @@ -141,24 +141,37 @@ static void __mc_set_data(gpointer data, gpointer user_data) static void __mc_get_data(gpointer data, gpointer user_data) { + mc_list_data_set_t *_data = (mc_list_data_set_t *)data; mc_list_user_data *_user_data = (mc_list_user_data *)user_data; - mc_comm_msg_s *_message = (mc_comm_msg_s *)_user_data->message; + mc_comm_msg_s *_message = NULL; + unsigned int i = 0; + unsigned int length_of_list = 0; + char *value = NULL; + + mc_retm_if(!data, "Invalid data"); + mc_retm_if(!user_data, "Invalid user_data"); + + _message = (mc_comm_msg_s *)_user_data->message; + mc_retm_if(_message->msg_size == 0, "Invalid msg_size"); + mc_retm_if(!MC_STRING_VALID(_message->msg), "Invalid msg"); if (_data->s_data != NULL) { - unsigned int i = 0; - unsigned int length_of_list = g_list_length(_data->s_data); - char *value = NULL; + + length_of_list = g_list_length(_data->s_data); + for (i = 0; i < length_of_list; i++) { + value = (char *)g_list_nth_data(_data->s_data, i); - if ((value != NULL) && (strlen(value) == _message->msg_size)) { - if (strncmp(value, _message->msg, _message->msg_size) == 0) { - _data->s_data = g_list_remove(_data->s_data, value); - MC_SAFE_FREE(value); - _user_data->result++; - } + + if (g_strcmp0(value, _message->msg) == 0) { + _data->s_data = g_list_remove(_data->s_data, value); + MC_SAFE_FREE(value); + _user_data->result++; + break; } } + if (g_list_length(_data->s_data) == 0) _data->s_data = NULL; }