From 1dc22c7241e7a4560bc2ba5e920721df27c39778 Mon Sep 17 00:00:00 2001 From: William Wilgus Date: Sun, 31 Mar 2024 22:08:55 -0400 Subject: use path_append for setting directories is several settings sprintf, strcpy, memccpy can all just go thru path_append with the added benefit of some path sanitizing too Change-Id: I33510b56a364b8b3a0b06f2ff14b76491f6e3870 --- firmware/target/hosted/filesystem-app.c | 4 ++-- firmware/target/hosted/rolo.c | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) (limited to 'firmware/target/hosted') diff --git a/firmware/target/hosted/filesystem-app.c b/firmware/target/hosted/filesystem-app.c index 09b3365a9e..b36f04a0fe 100644 --- a/firmware/target/hosted/filesystem-app.c +++ b/firmware/target/hosted/filesystem-app.c @@ -211,7 +211,7 @@ const char * handle_special_dirs(const char *dir, unsigned flags, { const char *p = dir + HOME_DIR_LEN; while (*p == '/') p++; - snprintf(buf, bufsize, "%s/%s", rbhome, p); + path_append(buf, rbhome, p, bufsize); dir = buf; } else if (!strncmp(ROCKBOX_DIR, dir, ROCKBOX_DIR_LEN)) @@ -232,7 +232,7 @@ const char * handle_special_dirs(const char *dir, unsigned flags, #endif ) { - snprintf(buf, bufsize, "%s/%s", PIVOT_ROOT, dir); + path_append(buf, PIVOT_ROOT, dir, bufsize); dir = buf; } #endif diff --git a/firmware/target/hosted/rolo.c b/firmware/target/hosted/rolo.c index dfe483c964..87b7340198 100644 --- a/firmware/target/hosted/rolo.c +++ b/firmware/target/hosted/rolo.c @@ -33,6 +33,7 @@ #include "storage.h" #include "rolo.h" #include "rbpaths.h" +#include "pathfuncs.h" //#define LOGF_ENABLE #include "logf.h" @@ -94,9 +95,9 @@ int rolo_load(const char* filename) logf("system: %s", buf); system(buf); - snprintf(buf, sizeof(buf), "%s/%s", EXECDIR, BOOTFILE); + path_append(buf, EXECDIR, BOOTFILE, sizeof(buf)); #else - snprintf(buf, sizeof(buf), "%s/%s", EXECDIR, filename); + path_append(buf, EXECDIR, filename, sizeof(buf)); #endif logf("execl: %s", buf); -- cgit v1.2.3