Magellan Linux

Contents of /tags/mkinitrd-6_4_0/busybox/libbb/concat_path_file.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1313 - (show annotations) (download)
Fri May 27 18:20:23 2011 UTC (13 years ago) by niro
File MIME type: text/plain
File size: 703 byte(s)
tagged 'mkinitrd-6_4_0'
1 /* vi: set sw=4 ts=4: */
2 /*
3 * Utility routines.
4 *
5 * Copyright (C) many different people.
6 * If you wrote this, please acknowledge your work.
7 *
8 * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
9 */
10
11 /* Concatenate path and filename to new allocated buffer.
12 * Add '/' only as needed (no duplicate // are produced).
13 * If path is NULL, it is assumed to be "/".
14 * filename should not be NULL.
15 */
16
17 #include "libbb.h"
18
19 char* FAST_FUNC concat_path_file(const char *path, const char *filename)
20 {
21 char *lc;
22
23 if (!path)
24 path = "";
25 lc = last_char_is(path, '/');
26 while (*filename == '/')
27 filename++;
28 return xasprintf("%s%s%s", path, (lc==NULL ? "/" : ""), filename);
29 }