summaryrefslogtreecommitdiff
path: root/apps/plugins/rockboy/menu.c
diff options
context:
space:
mode:
authorNils Wallménius <nils@rockbox.org>2009-07-14 13:57:45 +0000
committerNils Wallménius <nils@rockbox.org>2009-07-14 13:57:45 +0000
commit3d4701a6e41616cf581a297bab1451cf2db70249 (patch)
treef845837c96ffbed7d59ddf8308f3b3e7c40cb8c9 /apps/plugins/rockboy/menu.c
parentc2900a1bacd5d98b57a0d15ea2add1bc08764057 (diff)
downloadrockbox-3d4701a6e41616cf581a297bab1451cf2db70249.tar.gz
rockbox-3d4701a6e41616cf581a297bab1451cf2db70249.zip
FS#10080
* Move strncpy() from core to the pluginlib * Introduce strlcpy() and use that instead in most places (use memcpy in a few) in core and some plugins * Drop strncpy() from the codec api as no codec used it * Bump codec and plugin api versions git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21863 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/rockboy/menu.c')
-rw-r--r--apps/plugins/rockboy/menu.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/apps/plugins/rockboy/menu.c b/apps/plugins/rockboy/menu.c
index 9821ce9ba2..76de224294 100644
--- a/apps/plugins/rockboy/menu.c
+++ b/apps/plugins/rockboy/menu.c
@@ -162,11 +162,10 @@ static void munge_name(char *buf, const size_t bufsiz) {
162 * checksum or something like that? 162 * checksum or something like that?
163 */ 163 */
164static void build_slot_path(char *buf, size_t bufsiz, size_t slot_id) { 164static void build_slot_path(char *buf, size_t bufsiz, size_t slot_id) {
165 char name_buf[40]; 165 char name_buf[17];
166 166
167 /* munge state file name */ 167 /* munge state file name */
168 strncpy(name_buf, rom.name, 40); 168 strlcpy(name_buf, rom.name, sizeof(name_buf));
169 name_buf[16] = '\0';
170 munge_name(name_buf, strlen(name_buf)); 169 munge_name(name_buf, strlen(name_buf));
171 170
172 /* glom the whole mess together */ 171 /* glom the whole mess together */
@@ -211,7 +210,7 @@ static bool do_file(char *path, char *desc, bool is_load) {
211 /* build description buffer */ 210 /* build description buffer */
212 memset(desc_buf, 0, 20); 211 memset(desc_buf, 0, 20);
213 if (desc) 212 if (desc)
214 strncpy(desc_buf, desc, 20); 213 strlcpy(desc_buf, desc, 20);
215 214
216 /* save state */ 215 /* save state */
217 write(fd, desc_buf, 20); 216 write(fd, desc_buf, 20);
@@ -241,8 +240,7 @@ static bool do_slot(size_t slot_id, bool is_load) {
241 if (!is_load) 240 if (!is_load)
242 if (rb->kbd_input(desc_buf, 20) || !strlen(desc_buf)) 241 if (rb->kbd_input(desc_buf, 20) || !strlen(desc_buf))
243 { 242 {
244 memset(desc_buf, 0, 20); 243 strlcpy(desc_buf, "Untitled", 20);
245 strncpy(desc_buf, "Untitled", 20);
246 } 244 }
247 245
248 /* load/save file */ 246 /* load/save file */