hush/libbb/concat_path_file.c
2006-10-28 12:37:16 +00:00

28 lines
606 B
C

/* vi: set sw=4 ts=4: */
/*
* Utility routines.
*
* Copyright (C) many different people.
* If you wrote this, please acknowledge your work.
*
* Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
*/
/* concatenate path and file name to new allocation buffer,
* not adding '/' if path name already has '/'
*/
#include "libbb.h"
char *concat_path_file(const char *path, const char *filename)
{
char *lc;
if (!path)
path = "";
lc = last_char_is(path, '/');
while (*filename == '/')
filename++;
return xasprintf("%s%s%s", path, (lc==NULL ? "/" : ""), filename);
}