From: Lennart Poettering Date: Wed, 27 Jan 2010 21:39:10 +0000 (+0100) Subject: port fragment loader to new utility functions X-Git-Tag: 0.git+20100605+dfd8ee-1~386 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c25fb0edbb8a1d4fc2e466a355e7d3e5ddeacd5e;p=systemd port fragment loader to new utility functions --- diff --git a/load-fragment.c b/load-fragment.c index 8bb29b2d..2df5c04f 100644 --- a/load-fragment.c +++ b/load-fragment.c @@ -481,32 +481,6 @@ int config_parse_bindtodevice( #define FOLLOW_MAX 8 -static char *build_path(const char *path, const char *filename) { - char *e, *r; - size_t k; - - assert(path); - assert(filename); - - /* This removes the last component of path and appends - * filename, unless the latter is absolute anyway or the - * former isn't */ - - if (path_is_absolute(filename)) - return strdup(filename); - - if (!(e = strrchr(path, '/'))) - return strdup(filename); - - k = strlen(filename); - if (!(r = new(char, e-path+1+k+1))) - return NULL; - - memcpy(r, path, e-path+1); - memcpy(r+(e-path)+1, filename, k+1); - - return r; -} static int open_follow(char **filename, FILE **_f, Set *names, char **_id) { unsigned c = 0; @@ -553,7 +527,7 @@ static int open_follow(char **filename, FILE **_f, Set *names, char **_id) { if ((r = readlink_malloc(*filename, &target)) < 0) return r; - k = build_path(*filename, target); + k = file_in_same_dir(*filename, target); free(target); if (!k)