From: Gilbok Lee Date: Thu, 13 Dec 2018 07:41:12 +0000 (+0900) Subject: [0.3.106] Modified for correct memory alloc and free function. X-Git-Tag: submit/tizen/20181218.081409^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F16%2F195416%2F3;p=platform%2Fcore%2Fapi%2Fplayer.git [0.3.106] Modified for correct memory alloc and free function. Change-Id: I86c29203c2832f7933b3a30c324334f1a9028ed2 --- diff --git a/packaging/capi-media-player.spec b/packaging/capi-media-player.spec index df559a4..352d617 100644 --- a/packaging/capi-media-player.spec +++ b/packaging/capi-media-player.spec @@ -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 diff --git a/src/player.c b/src/player.c index 0747a47..07c8729 100644 --- a/src/player.c +++ b/src/player.c @@ -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, char* msg, 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; } -