gpointer element_data = NULL;
while ((element_data = g_list_nth_data(g_directories, i)) != NULL) {
if (strlen((char *) element_data) > 0 && strlen((char *) element_data) <= MMFILE_PATH_MAX) {
- strncpy(pdirname, (char *) element_data, strlen((char *) element_data));
+ SAFE_STRLCPY(pdirname, (char *) element_data, sizeof(pdirname));
if ((dp = opendir(pdirname)) != NULL) {
while ((dirp = readdir(dp)) != NULL) {
}
memset(cdirname, 0x00, MMFILE_PATH_MAX + 1);
- strncpy(cdirname, pdirname, strlen(pdirname));
- strncat(cdirname, "/", 1);
- strncat(cdirname, dirp->d_name, strlen(dirp->d_name));
+ SAFE_STRLCPY(cdirname, pdirname, sizeof(cdirname));
+ SAFE_STRLCAT(cdirname, "/", sizeof(cdirname));
+ SAFE_STRLCAT(cdirname, dirp->d_name, sizeof(cdirname));
if (lstat(cdirname, &statbuf) < 0) {
printf("lstat error\n");
if (pInfo->pGenre) _FREE_EX(pInfo->pGenre);
pInfo->pGenre = mmfile_malloc(sizeof(char) * (tmp_genre_len + 1));
if (pInfo->pGenre) {
- strncpy(pInfo->pGenre, tmp_genre, tmp_genre_len);
- pInfo->pGenre[tmp_genre_len] = 0;
+ SAFE_STRLCPY(pInfo->pGenre, tmp_genre, tmp_genre_len + 1);
}
}
}
unsigned long purelyFramelen = 0;
unsigned int encodingOffSet = 0;
int inx = 0, realCpyFrameNum = 0, checkImgMimeTypeMax = 0, imgstartOffset = 0, tmp = 0;
- int textEncodingType = 0;
+ unsigned int textEncodingType = 0;
char **charset_array = NULL;
const char *MIME_PRFIX = "image/";
if (pInfo->pGenre) _FREE_EX(pInfo->pGenre);
pInfo->pGenre = mmfile_malloc(sizeof(char) * (tmp_genre_len + 1));
if (pInfo->pGenre) {
- strncpy(pInfo->pGenre, tmp_genre, tmp_genre_len);
- pInfo->pGenre[tmp_genre_len] = 0;
+ SAFE_STRLCPY(pInfo->pGenre, tmp_genre, tmp_genre_len + 1);
}
}
}
unsigned long purelyFramelen = 0;
unsigned int encodingOffSet = 0;
int inx = 0, realCpyFrameNum = 0, checkImgMimeTypeMax = 0, imgstartOffset = 0, tmp = 0;
- int textEncodingType = 0;
+ unsigned int textEncodingType = 0;
char **charset_array = NULL;
const char *MIME_PRFIX = "image/";
} else {
for (idx = 0; idx < realCpyFrameNum; idx++) {
if (pExtContent[tmp + idx] == 0x00) {
- synclyrics_info = (AvSynclyricsInfo *)malloc(sizeof(AvSynclyricsInfo));
-
- if (textEncodingType == AV_ID3V2_UTF8) {
- synclyrics_info->lyric_info = mmfile_malloc(copy_len + 1);
- if (synclyrics_info->lyric_info) {
- memset(synclyrics_info->lyric_info, 0, copy_len + 1);
- memcpy(synclyrics_info->lyric_info, pExtContent + copy_start_pos, copy_len);
- synclyrics_info->lyric_info[copy_len] = '\0';
+ synclyrics_info = (AvSynclyricsInfo *)mmfile_malloc(sizeof(AvSynclyricsInfo));
+ if (synclyrics_info) {
+ if (textEncodingType == AV_ID3V2_UTF8) {
+ synclyrics_info->lyric_info = mmfile_malloc(copy_len + 1);
+ if (synclyrics_info->lyric_info) {
+ memset(synclyrics_info->lyric_info, 0, copy_len + 1);
+ memcpy(synclyrics_info->lyric_info, pExtContent + copy_start_pos, copy_len);
+ synclyrics_info->lyric_info[copy_len] = '\0';
+ }
+ } else {
+ synclyrics_info->lyric_info = mmfile_string_convert((const char *)&pExtContent[copy_start_pos], copy_len, "UTF-8", charset_array[textEncodingType], NULL, NULL);
}
- } else {
- synclyrics_info->lyric_info = mmfile_string_convert((const char *)&pExtContent[copy_start_pos], copy_len, "UTF-8", charset_array[textEncodingType], NULL, NULL);
- }
- synclyrics_info->time_info = (unsigned long)pExtContent[tmp + idx + 1] << 24 | (unsigned long)pExtContent[tmp + idx + 2] << 16 | (unsigned long)pExtContent[tmp + idx + 3] << 8 | (unsigned long)pExtContent[tmp + idx + 4];
- idx += 4;
- copy_start_pos = tmp + idx + 1;
- debug_msg(RELEASE, "[%lu][%s] idx[%d], copy_len[%d] copy_start_pos[%d]", synclyrics_info->time_info, synclyrics_info->lyric_info, idx, copy_len, copy_start_pos);
- copy_len = 0;
- synclyrics_info_list = g_list_append(synclyrics_info_list, synclyrics_info);
+ synclyrics_info->time_info = (unsigned long)pExtContent[tmp + idx + 1] << 24 | (unsigned long)pExtContent[tmp + idx + 2] << 16 | (unsigned long)pExtContent[tmp + idx + 3] << 8 | (unsigned long)pExtContent[tmp + idx + 4];
+ idx += 4;
+ copy_start_pos = tmp + idx + 1;
+ debug_msg(RELEASE, "[%lu][%s] idx[%d], copy_len[%d] copy_start_pos[%d]", synclyrics_info->time_info, synclyrics_info->lyric_info, idx, copy_len, copy_start_pos);
+ copy_len = 0;
+ synclyrics_info_list = g_list_append(synclyrics_info_list, synclyrics_info);
+ }
}
copy_len++;
}
if (pInfo->pGenre) _FREE_EX(pInfo->pGenre);
pInfo->pGenre = mmfile_malloc(sizeof(char) * (tmp_genre_len + 1));
if (pInfo->pGenre) {
- strncpy(pInfo->pGenre, tmp_genre, tmp_genre_len);
- pInfo->pGenre[tmp_genre_len] = 0;
+ SAFE_STRLCPY(pInfo->pGenre, tmp_genre, tmp_genre_len + 1);
}
}
}
/* Give space for NULL character. Hence added "+1" */
pInfo->pGenre = mmfile_malloc(sizeof(char) * (pInfo->genreLen + 1));
if (pInfo->pGenre) {
- strncpy(pInfo->pGenre, MpegAudio_Genre[genre], pInfo->genreLen);
- pInfo->pGenre[pInfo->genreLen] = '\0';
+ SAFE_STRLCPY(pInfo->pGenre, MpegAudio_Genre[genre], pInfo->genreLen + 1);
}
}
}
pInfo->genreLen = strlen(pInfo->pGenre);
mpegAudioGenre = mmfile_malloc(sizeof(char) * (pInfo->genreLen + 1));
if (mpegAudioGenre != NULL) {
- mpegAudioGenre[pInfo->genreLen] = '\0';
- strncpy(mpegAudioGenre, pInfo->pGenre, pInfo->genreLen);
+ SAFE_STRLCPY(mpegAudioGenre, pInfo->pGenre, pInfo->genreLen + 1);
}
} else {
pInfo->genreLen = 0;
/* Give space for NULL character. Hence added "+1" */
pInfo->pGenre = mmfile_malloc(sizeof(char) * (pInfo->genreLen + 1));
if (pInfo->pGenre) {
- strncpy(pInfo->pGenre, MpegAudio_Genre[idv2IntGenre], pInfo->genreLen);
- pInfo->pGenre[pInfo->genreLen] = 0;
+ SAFE_STRLCPY(pInfo->pGenre, MpegAudio_Genre[idv2IntGenre], pInfo->genreLen + 1);
}
}
}
/* Give space for NULL character. Hence added "+1" */
pInfo->pGenre = mmfile_malloc(sizeof(char) * (pInfo->genreLen + 1));
if (pInfo->pGenre) {
- strncpy(pInfo->pGenre, mpegAudioGenre, pInfo->genreLen);
- pInfo->pGenre[pInfo->genreLen] = '\0';
+ SAFE_STRLCPY(pInfo->pGenre, mpegAudioGenre, pInfo->genreLen + 1);
}
debug_msg(RELEASE, "pInfo->pGenre = %s, pInfo->genreLen = %d\n", pInfo->pGenre, pInfo->genreLen);
} else {