From 67124b97b3af69af0e2eeb82bb751a909f99b245 Mon Sep 17 00:00:00 2001 From: bpc2003 Date: Mon, 17 Mar 2025 14:54:25 -0400 Subject: Added extra guard clauses to prevent undefined behavior --- src/lib/file.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/lib/file.c') diff --git a/src/lib/file.c b/src/lib/file.c index f170b4e..a6bb035 100644 --- a/src/lib/file.c +++ b/src/lib/file.c @@ -14,8 +14,9 @@ tablist_t *readdb(char *filename) int len = 2; tablist_t *list = calloc(len, sizeof(tablist_t)); list[0].len = len; - FILE *fp = fopen(filename, "rb"); - if (fp == NULL) + FILE *fp; + if (filename == NULL || + (fp = fopen(filename, "rb")) == NULL) return list; int c, i = 0, open = 0; @@ -59,6 +60,8 @@ fail: void writedb(char *filename, tablist_t *list) { FILE *fp = fopen(filename, "wb"); + if (fp == NULL) + return; for (int i = 0; i < list[0].len; ++i) { fputc(0xFB, fp); int *indexes = getkeys(list, i); -- cgit v1.2.3