diff options
-rw-r--r-- | util.c | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -59,10 +59,15 @@ int xreaddir(DIR *dir, struct dirent **de) { } char *xreadlinkat(int fd, const char *path, size_t size) { - ++size; // NUL-terminator ssize_t len; char *name = NULL; + if (size == 0) { + size = 64; + } else { + ++size; // NUL terminator + } + while (true) { char *new_name = realloc(name, size); if (!new_name) { |