Str_concati
file = Str_concati(p->name, strchr(p->name, '\0'), basename,
file = Str_concati(p->name,
newName = Str_concati(fname, slash, file, efile, '/');
extern char *Str_concati(const char *, const char *, const char *, const char *, int);
#define Str_concat(s1, s2, sep) Str_concati(s1, strchr(s1, '\0'), s2, strchr(s2, '\0'), sep)