From ae0520e57267dbd866fc8cd25f66f4e6af2ac118 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Mon, 13 Jul 2020 15:59:30 +0200 Subject: Move c files into src directory --- fileutils.c | 82 ------------------------------------------------------------- 1 file changed, 82 deletions(-) delete mode 100644 fileutils.c (limited to 'fileutils.c') diff --git a/fileutils.c b/fileutils.c deleted file mode 100644 index ea57550..0000000 --- a/fileutils.c +++ /dev/null @@ -1,82 +0,0 @@ -#include "fileutils.h" -#include "alloc.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -const char* get_home_dir() { - const char *home_dir = getenv("HOME"); - if(!home_dir) { - struct passwd *pw = getpwuid(getuid()); - home_dir = pw->pw_dir; - } - return home_dir; -} - -int file_get_content(const char *filepath, char **data, long *size) { - int result = 0; - FILE *file = fopen(filepath, "rb"); - if(!file) { - int err = -errno; - perror(filepath); - return err; - } - - fseek(file, 0, SEEK_END); - *size = ftell(file); - if(*size == -1) { - fprintf(stderr, "Failed to tell the size of file %s, is it not a file?\n", filepath); - result = -1; - goto cleanup; - } - fseek(file, 0, SEEK_SET); - - *data = alloc_or_crash(*size); - if((long)fread(*data, 1, *size, file) != *size) { - fprintf(stderr, "Failed to read all bytes in file %s\n", filepath); - result = -1; - goto cleanup; - } - - cleanup: - fclose(file); - return result; -} - -int create_directory_recursive(char *path) { - int path_len = strlen(path); - char *p = path; - char *end = path + path_len; - for(;;) { - char *slash_p = strchr(p, '/'); - - // Skips first '/', we don't want to try and create the root directory - if(slash_p == path) { - ++p; - continue; - } - - if(!slash_p) - slash_p = end; - - char prev_char = *slash_p; - *slash_p = '\0'; - int err = mkdir(path, S_IRWXU); - *slash_p = prev_char; - - if(err == -1 && errno != EEXIST) - return err; - - if(slash_p == end) - break; - else - p = slash_p + 1; - } - return 0; -} -- cgit v1.2.3