diff options
author | andersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2001-04-09 22:48:12 +0000 |
---|---|---|
committer | andersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2001-04-09 22:48:12 +0000 |
commit | 88ea4d5576ceec648bff7f9bbf919fd3ecdff67b (patch) | |
tree | ef367ee8a9096884fb40debdc9e10af8583f9d5f /libbb/concat_path_file.c | |
parent | ada3b10c6a1ad210d6bf4078859792562636f27e (diff) | |
download | busybox-w32-88ea4d5576ceec648bff7f9bbf919fd3ecdff67b.tar.gz busybox-w32-88ea4d5576ceec648bff7f9bbf919fd3ecdff67b.tar.bz2 busybox-w32-88ea4d5576ceec648bff7f9bbf919fd3ecdff67b.zip |
Apply Vladimir's latest cleanup patch.
-Erik
git-svn-id: svn://busybox.net/trunk/busybox@2288 69ca8d6d-28ef-0310-b511-8ec308f3f277
Diffstat (limited to 'libbb/concat_path_file.c')
-rw-r--r-- | libbb/concat_path_file.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/libbb/concat_path_file.c b/libbb/concat_path_file.c new file mode 100644 index 000000000..d53dc0e2e --- /dev/null +++ b/libbb/concat_path_file.c | |||
@@ -0,0 +1,24 @@ | |||
1 | /* | ||
2 | * busybox library eXtendet funcion | ||
3 | * | ||
4 | * concatenate path and file name to new allocation buffer, | ||
5 | * not addition '/' if path name already have '/' | ||
6 | * | ||
7 | */ | ||
8 | |||
9 | #include "libbb.h" | ||
10 | |||
11 | extern char *concat_path_file(const char *path, const char *filename) | ||
12 | { | ||
13 | char *outbuf; | ||
14 | int l; | ||
15 | int flg_slash = 1; | ||
16 | |||
17 | l = strlen(path); | ||
18 | if(l>0 && path[l-1] == '/') | ||
19 | flg_slash--; | ||
20 | l += strlen(filename); | ||
21 | outbuf = xmalloc(l+1+flg_slash); | ||
22 | sprintf(outbuf, (flg_slash ? "%s/%s" : "%s%s"), path, filename); | ||
23 | return outbuf; | ||
24 | } | ||