mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-11-11 14:12:26 -05:00
add memccpy.c
Not sure if this is worth the added bin size yet but I will see where I can use it to try and make it worth it Change-Id: Icc299d3986172ff224a14be48da3bf065d728a66
This commit is contained in:
parent
034b6d5bfb
commit
b25a9d8f99
6 changed files with 139 additions and 5 deletions
|
|
@ -1627,7 +1627,9 @@ static int ata_smart_attr_to_string(
|
|||
if (len >= name_sz) len = name_sz-1;
|
||||
slen += len;
|
||||
}
|
||||
snprintf(str+slen, size-slen, "%s", buf);
|
||||
|
||||
if (!memccpy (str+slen, buf, '\0', size-slen))
|
||||
(str+slen)[size-slen - 1] = '\0';
|
||||
}
|
||||
|
||||
return 1; /* ok */
|
||||
|
|
|
|||
|
|
@ -516,7 +516,10 @@ static enum pv_onplay_result open_with(const struct playlist_entry *current_trac
|
|||
{
|
||||
char selected_track[MAX_PATH];
|
||||
close_playlist_viewer();
|
||||
snprintf(selected_track, sizeof(selected_track), "%s", current_track->name);
|
||||
|
||||
if (!memccpy (selected_track, current_track->name, '\0', sizeof(selected_track)))
|
||||
selected_track[sizeof(selected_track) - 1] = '\0';
|
||||
|
||||
|
||||
return (filetype_list_viewers(selected_track) ==
|
||||
PLUGIN_USB_CONNECTED ? PV_ONPLAY_USB_CLOSED : PV_ONPLAY_CLOSED);
|
||||
|
|
@ -528,7 +531,9 @@ static enum pv_onplay_result open_pictureflow(const struct playlist_entry *curre
|
|||
{
|
||||
char selected_track[MAX_PATH];
|
||||
close_playlist_viewer();
|
||||
snprintf(selected_track, sizeof(selected_track), "%s", current_track->name);
|
||||
|
||||
if (!memccpy (selected_track, current_track->name, '\0', sizeof(selected_track)))
|
||||
selected_track[sizeof(selected_track) - 1] = '\0';
|
||||
|
||||
return (filetype_load_plugin((void *)"pictureflow", selected_track) ==
|
||||
PLUGIN_USB_CONNECTED ? PV_ONPLAY_USB_CLOSED : PV_ONPLAY_CLOSED);
|
||||
|
|
|
|||
|
|
@ -561,7 +561,10 @@ static const char * id3_get_or_speak_info(int selected_item, void* data,
|
|||
case LANG_ID3_COMMENT:
|
||||
if (!id3->comment)
|
||||
return NULL;
|
||||
snprintf(buffer, buffer_len, "%s", id3->comment);
|
||||
|
||||
if (!memccpy (buffer, id3->comment, '\0', buffer_len))
|
||||
buffer[buffer_len - 1] = '\0';
|
||||
|
||||
val=buffer;
|
||||
if(say_it && val)
|
||||
talk_spell(val, true);
|
||||
|
|
@ -608,7 +611,10 @@ static const char * id3_get_or_speak_info(int selected_item, void* data,
|
|||
case LANG_FORMAT:
|
||||
if (id3->codectype >= AFMT_NUM_CODECS)
|
||||
return NULL;
|
||||
snprintf(buffer, buffer_len, "%s", audio_formats[id3->codectype].label);
|
||||
|
||||
if (!memccpy (buffer, audio_formats[id3->codectype].label, '\0', buffer_len))
|
||||
buffer[buffer_len - 1] = '\0';
|
||||
|
||||
val=buffer;
|
||||
if(say_it)
|
||||
talk_spell(val, true);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue