diff options
Diffstat (limited to 'apps/plugins/rockboy')
-rw-r--r-- | apps/plugins/rockboy/menu.c | 10 | ||||
-rw-r--r-- | apps/plugins/rockboy/rockmacros.h | 2 |
2 files changed, 5 insertions, 7 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 | */ |
164 | static void build_slot_path(char *buf, size_t bufsiz, size_t slot_id) { | 164 | static 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 */ |
diff --git a/apps/plugins/rockboy/rockmacros.h b/apps/plugins/rockboy/rockmacros.h index 414b889003..0fd13f6ef9 100644 --- a/apps/plugins/rockboy/rockmacros.h +++ b/apps/plugins/rockboy/rockmacros.h | |||
@@ -67,7 +67,7 @@ void dynamic_recompile (struct dynarec_block *newblock); | |||
67 | #define strcat(a,b) rb->strcat((a),(b)) | 67 | #define strcat(a,b) rb->strcat((a),(b)) |
68 | #define memset(a,b,c) rb->memset((a),(b),(c)) | 68 | #define memset(a,b,c) rb->memset((a),(b),(c)) |
69 | #define strcpy(a,b) rb->strcpy((a),(b)) | 69 | #define strcpy(a,b) rb->strcpy((a),(b)) |
70 | #define strncpy(a,b,c) rb->strncpy((a),(b),(c)) | 70 | #define strlcpy(a,b,c) rb->strlcpy((a),(b),(c)) |
71 | #define strlen(a) rb->strlen((a)) | 71 | #define strlen(a) rb->strlen((a)) |
72 | #define strcmp(a,b) rb->strcmp((a),(b)) | 72 | #define strcmp(a,b) rb->strcmp((a),(b)) |
73 | #define strchr(a,b) rb->strchr((a),(b)) | 73 | #define strchr(a,b) rb->strchr((a),(b)) |