From 986006449d1586d9ae55e5696015aa67b0e33f4f Mon Sep 17 00:00:00 2001 From: sam Date: Mon, 22 Jul 2024 22:43:39 +1200 Subject: [PATCH] no longer exit when file not found --- slibs.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/slibs.h b/slibs.h index 6637042..a8b1b6e 100644 --- a/slibs.h +++ b/slibs.h @@ -141,10 +141,11 @@ typedef sl_vec(char) sl_string; #define sl_str_free(str) sl_vec_free(str) -char* sl_c_str(sl_string str); +char *sl_c_str(sl_string str); #ifdef SL_IMPLEMENTATION -char* sl_c_str(sl_string str) { +char *sl_c_str(sl_string str) +{ sl_vec_push(str, '\0'); return str.data; } @@ -211,7 +212,6 @@ FILE *sl_open_file(const char *filename, const char *mode) if (!file) { fprintf(stderr, "Error: could not open file %s\n", filename); - exit(1); } return file; } @@ -219,6 +219,7 @@ FILE *sl_open_file(const char *filename, const char *mode) sl_string *sl_read_file(const char *filename) { FILE *file = sl_open_file(filename, "r"); + if(!file) return NULL; fseek(file, 0, SEEK_END); size_t file_size = ftell(file); @@ -238,6 +239,7 @@ sl_string *sl_read_file(const char *filename) void sl_write_file(const char *filename, sl_string buffer) { FILE *file = sl_open_file(filename, "w"); + if(!file) return; fputs(sl_c_str(buffer), file); fclose(file);