[0.3.106] Modified for correct memory alloc and free function. 16/195416/3 accepted/tizen/unified/20181219.063248 submit/tizen/20181218.081409
authorGilbok Lee <gilbok.lee@samsung.com>
Thu, 13 Dec 2018 07:41:12 +0000 (16:41 +0900)
committerGilbok Lee <gilbok.lee@samsung.com>
Tue, 18 Dec 2018 05:04:23 +0000 (05:04 +0000)
Change-Id: I86c29203c2832f7933b3a30c324334f1a9028ed2

packaging/capi-media-player.spec
src/player.c

index df559a4..352d617 100644 (file)
@@ -1,6 +1,6 @@
 Name:       capi-media-player
 Summary:    A Media Player API
-Version:    0.3.105
+Version:    0.3.106
 Release:    0
 Group:      Multimedia/API
 License:    Apache-2.0
index 0747a47..07c8729 100644 (file)
@@ -83,7 +83,7 @@ static void _player_release_internal_memory(player_cli_s * pc, bool deinit_serve
 /*
 * Internal Implementation
 */
-int _player_send_msg(muse_player_api_e api, player_cli_s *player, charmsg, tbm_fd tfd, char **retbuf)
+int _player_send_msg(muse_player_api_e api, player_cli_s *player, char *msg, tbm_fd tfd, char **retbuf)
 {
        int ret = PLAYER_ERROR_NONE;
        int send_len = 0;
@@ -365,7 +365,7 @@ static int player_recv_msg(callback_cb_info_s * cb_info, tbm_fd *tfd)
        /* check the first msg */
        if (buff->part_of_msg && buff->recvMsg[0] != '{')
        {
-               gchar *tmp = strndup(buff->recvMsg, recvLen);
+               gchar *tmp = g_strndup(buff->recvMsg, recvLen);
                if (!tmp) {
                        LOGE("failed to copy msg.");
                        return 0;
@@ -374,34 +374,33 @@ static int player_recv_msg(callback_cb_info_s * cb_info, tbm_fd *tfd)
                LOGD("get remained part of msg %d + %zu, %d", recvLen, strlen(buff->part_of_msg), buff->bufLen);
 
                /* realloc buffer */
-               if (recvLen+strlen(buff->part_of_msg) >= buff->bufLen) {
-                       LOGD("realloc Buffer %d -> %d", buff->bufLen, (int)(recvLen+strlen(buff->part_of_msg)+1));
-                       buff->bufLen = recvLen+strlen(buff->part_of_msg)+1;
+               if (recvLen + strlen(buff->part_of_msg) >= buff->bufLen) {
+                       LOGD("realloc Buffer %d -> %d", buff->bufLen, (int)(recvLen + strlen(buff->part_of_msg) + 1));
+                       buff->bufLen = recvLen + strlen(buff->part_of_msg) + 1;
                        buff->recvMsg = g_renew(char, buff->recvMsg, buff->bufLen);
                        if (!buff->recvMsg) {
                                LOGE("failed renew buffer.");
-                               if (tmp)
-                                       free(tmp);
+                               g_free(tmp);
                                return 0;
                        }
                        memset(buff->recvMsg, 0x00, sizeof(char)*buff->bufLen);
                }
-               snprintf(buff->recvMsg, buff->bufLen, "%s%s", buff->part_of_msg, tmp);
+               g_snprintf(buff->recvMsg, buff->bufLen, "%s%s", buff->part_of_msg, tmp);
                recvLen += strlen(buff->part_of_msg);
 
-               free(buff->part_of_msg);
+               g_free(buff->part_of_msg);
                buff->part_of_msg = NULL;
-               free(tmp);
+               g_free(tmp);
                tmp = NULL;
        }
 
        /* check the last msg */
-       if (buff->recvMsg[recvLen-1] != '}') {
+       if (buff->recvMsg[recvLen - 1] != '}') {
                char *part_pos = strrchr(buff->recvMsg, '}');
-               int part_len = ((part_pos) ? (strlen(part_pos+1)) : (0));
+               int part_len = ((part_pos) ? (strlen(part_pos + 1)) : (0));
 
                if (part_len > 0) {
-                       buff->part_of_msg = strndup(part_pos+1, part_len);
+                       buff->part_of_msg = g_strndup(part_pos + 1, part_len);
                        if (!buff->part_of_msg) {
                                LOGE("failed to alloc buffer for part of msg.");
                                return 0;
@@ -1505,7 +1504,7 @@ static void _add_ret_msg(muse_player_api_e api, callback_cb_info_s * cb_info, in
        msg = g_new(ret_msg_s, 1);
        if (msg) {
                msg->api = api;
-               msg->msg = strndup(cb_info->buff.recvMsg + offset, parse_len);
+               msg->msg = g_strndup(cb_info->buff.recvMsg + offset, parse_len);
                msg->next = NULL;
                if (last == NULL)
                        cb_info->buff.retMsgHead = msg;
@@ -1622,7 +1621,7 @@ static void *client_cb_handler(gpointer data)
                                                recv_data = g_new0(_player_recv_data, 1);
                                                if (recv_data != NULL) {
                                                        memcpy(recv_data->tfd, tfd, sizeof(recv_data->tfd));
-                                                       recv_data->buffer = strndup(recvMsg+offset, parse_len);
+                                                       recv_data->buffer = g_strndup(recvMsg+offset, parse_len);
                                                } else {
                                                        LOGE("failed to alloc recv_data.");
                                                        g_mutex_unlock(&cb_info->player_mutex);
@@ -1645,7 +1644,7 @@ static void *client_cb_handler(gpointer data)
                                                g_mutex_unlock(&cb_info->player_mutex);
                                        }
                                } else {
-                                       LOGE("Failed to get value. offset:%d/%d, [msg][ %s ]", offset, len, (recvMsg+offset));
+                                       LOGE("Failed to get value. offset:%d/%d, [msg][ %s ]", offset, len, (recvMsg + offset));
                                }
                                muse_core_msg_object_free(jobj);
                        } else {
@@ -2145,7 +2144,7 @@ EXIT:
 /* 1. correct the protocol prefix to lower case
  * 2. remove 'file://' prefix
  * 3. covert '/opt/usr/media/xxx' file path to '/opt/usr/home/owner/media/xxx' */
-int _player_get_valid_path(const char* uri, char* valid_path)
+int _player_get_valid_path(const char *uri, char *valid_path)
 {
        gchar *file_path = NULL;
        GError *err = NULL;
@@ -2161,8 +2160,8 @@ int _player_get_valid_path(const char* uri, char* valid_path)
 
                if (protocol) {
 
-                       file_path = g_strconcat(protocol, uri+strlen(protocol), NULL);
-                       strncpy(valid_path, (file_path) ? (file_path) : (uri), MAX_URL_LEN-1);
+                       file_path = g_strconcat(protocol, uri + strlen(protocol), NULL);
+                       strncpy(valid_path, (file_path) ? (file_path) : (uri), MAX_URL_LEN - 1);
 
                        g_free(protocol);
                        g_free(file_path);
@@ -2175,8 +2174,8 @@ int _player_get_valid_path(const char* uri, char* valid_path)
                                        SECURE_LOGE("Invalid URI '%s', err: %s", uri,
                                                        (err != NULL) ? err->message : "unknown error");
 
-                                       if (err) g_error_free(err);
-                                       if (file_path) g_free(file_path);
+                                       g_error_free(err);
+                                       g_free(file_path);
 
                                        return PLAYER_ERROR_INVALID_PARAMETER;
                                }
@@ -5124,4 +5123,3 @@ int player_is_replaygain_enabled(player_h player, bool *enabled)
        g_free(ret_buf);
        return ret;
 }
-