From 9ea57964953dec11dcbbd5d4bf44a5e3781f5880 Mon Sep 17 00:00:00 2001 From: Derrick Stolee Date: Thu, 22 Dec 2022 15:14:14 +0000 Subject: strbuf: introduce strbuf_strip_file_from_path() The strbuf_parent_directory() method was added as a static method in contrib/scalar by d0feac4e8c0 (scalar: 'register' sets recommended config and starts maintenance, 2021-12-03) and then removed in 65f6a9eb0b9 (scalar: constrain enlistment search, 2022-08-18), but now there is a need for a similar method in the bundle URI feature. Re-add the method, this time in strbuf.c, but with a new name: strbuf_strip_file_from_path(). The method requirements are slightly modified to allow a trailing slash, in which case nothing is done, which makes the name change valuable. Signed-off-by: Derrick Stolee Signed-off-by: Junio C Hamano --- strbuf.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'strbuf.c') diff --git a/strbuf.c b/strbuf.c index 0890b1405c..c383f41a3c 100644 --- a/strbuf.c +++ b/strbuf.c @@ -1200,3 +1200,9 @@ int strbuf_edit_interactively(struct strbuf *buffer, const char *path, free(path2); return res; } + +void strbuf_strip_file_from_path(struct strbuf *sb) +{ + char *path_sep = find_last_dir_sep(sb->buf); + strbuf_setlen(sb, path_sep ? path_sep - sb->buf + 1 : 0); +} -- cgit v1.2.3