diff --git a/common/util.c b/common/util.c index 467aa4b5a..78d46a2a5 100644 --- a/common/util.c +++ b/common/util.c @@ -138,40 +138,3 @@ bool parse_boolean(const char *boolean, bool current) { // All other values are false to match i3 return false; } - -char* resolve_path(const char* path) { - struct stat sb; - ssize_t r; - int i; - char *current = NULL; - char *resolved = NULL; - - if(!(current = strdup(path))) { - return NULL; - } - for (i = 0; i < 16; ++i) { - if (lstat(current, &sb) == -1) { - goto failed; - } - if((sb.st_mode & S_IFMT) != S_IFLNK) { - return current; - } - if (!(resolved = malloc(sb.st_size + 1))) { - goto failed; - } - r = readlink(current, resolved, sb.st_size); - if (r == -1 || r > sb.st_size) { - goto failed; - } - resolved[r] = '\0'; - free(current); - current = strdup(resolved); - free(resolved); - resolved = NULL; - } - -failed: - free(resolved); - free(current); - return NULL; -} diff --git a/include/util.h b/include/util.h index c39c92b14..56ca2eb85 100644 --- a/include/util.h +++ b/include/util.h @@ -59,13 +59,4 @@ uint32_t parse_color(const char *color); */ bool parse_boolean(const char *boolean, bool current); -/** - * Given a path string, recurseively resolves any symlinks to their targets - * (which may be a file, directory) and returns the result. - * argument is returned. Caller must free the returned buffer. - * If an error occures, if the path does not exist or if the path corresponds - * to a dangling symlink, NULL is returned. - */ -char* resolve_path(const char* path); - #endif