From c25fb0edbb8a1d4fc2e466a355e7d3e5ddeacd5e Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 27 Jan 2010 22:39:10 +0100 Subject: [PATCH] port fragment loader to new utility functions --- load-fragment.c | 28 +--------------------------- 1 file changed, 1 insertion(+), 27 deletions(-) diff --git a/load-fragment.c b/load-fragment.c index 8bb29b2dc..2df5c04f7 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) -- 2.30.2