summaryrefslogtreecommitdiff
path: root/scripts/mod/sumversion.c
diff options
context:
space:
mode:
authorMasahiro Yamada <masahiroy@kernel.org>2025-02-08 02:50:13 +0900
committerMasahiro Yamada <masahiroy@kernel.org>2025-03-15 21:16:21 +0900
commit59d60d26a58be75e9e3b813104c2dfd3b58eb662 (patch)
treead8fb7559b010a61633bc0fd0e72e5792707277b /scripts/mod/sumversion.c
parentab5bc764bdc270d1c55aaf9d238e0986ff301355 (diff)
modpost: introduce get_basename() helper
The logic to retrieve the basename appears multiple times. Factor out the common pattern into a helper function. I copied kbasename() from include/linux/string.h and renamed it to get_basename(). Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> Reviewed-by: Nicolas Schier <nicolas@fjasle.eu>
Diffstat (limited to 'scripts/mod/sumversion.c')
-rw-r--r--scripts/mod/sumversion.c13
1 files changed, 4 insertions, 9 deletions
diff --git a/scripts/mod/sumversion.c b/scripts/mod/sumversion.c
index 6de9af17599d..e79fc40d852f 100644
--- a/scripts/mod/sumversion.c
+++ b/scripts/mod/sumversion.c
@@ -309,15 +309,10 @@ static int parse_source_files(const char *objfile, struct md4_ctx *md)
cmd = xmalloc(strlen(objfile) + sizeof("..cmd"));
- base = strrchr(objfile, '/');
- if (base) {
- base++;
- dirlen = base - objfile;
- sprintf(cmd, "%.*s.%s.cmd", dirlen, objfile, base);
- } else {
- dirlen = 0;
- sprintf(cmd, ".%s.cmd", objfile);
- }
+ base = get_basename(objfile);
+ dirlen = base - objfile;
+ sprintf(cmd, "%.*s.%s.cmd", dirlen, objfile, base);
+
dir = xmalloc(dirlen + 1);
strncpy(dir, objfile, dirlen);
dir[dirlen] = '\0';