From f91369e98f9b03bc154c323bb0f01763c23c3a20 Mon Sep 17 00:00:00 2001 From: Nathaniel Walizer Date: Sun, 12 Jan 2025 11:43:45 -0800 Subject: [PATCH] Replace strcpy with memcpy to fix -O3 build --- Makefile | 3 ++- src/file.c | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 31c58b1..3f6a790 100644 --- a/Makefile +++ b/Makefile @@ -17,7 +17,8 @@ endif CC = $(CROSS_COMPILE)gcc LD = $(CC) PFLAGS = -g -#PFLAGS += -O3 -s +#PFLAGS += -O3 +#PFLAGS += -s #PFLAGS += -DDEBUG_MAPPER #PFLAGS += -DDEBUG_RENDER #PFLAGS += -DDEBUG_PPU -DDEBUG_VRAM -DDEBUG_OAM diff --git a/src/file.c b/src/file.c index 84ef4f3..f2522b2 100644 --- a/src/file.c +++ b/src/file.c @@ -31,7 +31,7 @@ int make_filename(char* filename, int max_len, // Part 1/4: Leading path if (0 == status && orig_path_len <= remain) { - strncpy(filename, orig_name, orig_path_len); + memcpy(filename, orig_name, orig_path_len); remain -= orig_path_len; filename += orig_path_len; } else { @@ -42,7 +42,7 @@ int make_filename(char* filename, int max_len, if (0 == status && NULL != subdir) { int subdir_len = strlen(subdir); if ((subdir_len + 1) <= remain) { - strncpy(filename, subdir, subdir_len); + memcpy(filename, subdir, subdir_len); filename += subdir_len; *filename++ = '/'; remain -= (subdir_len + 1); @@ -53,7 +53,7 @@ int make_filename(char* filename, int max_len, // Part 3/4: Basename if (0 == status && orig_base_len <= remain) { - strncpy(filename, orig_name, orig_base_len); + memcpy(filename, orig_name, orig_base_len); remain -= orig_base_len; filename += orig_base_len; } else { @@ -65,7 +65,7 @@ int make_filename(char* filename, int max_len, int ext_len = strlen(ext); if ((ext_len + 1) <= remain) { *filename++ = '.'; - strncpy(filename, ext, ext_len); + memcpy(filename, ext, ext_len); remain -= (ext_len + 1); filename += ext_len; } else {