From 7165bb7ae9e34e69d0c8802d6e356851cffe0f07 Mon Sep 17 00:00:00 2001 From: nasr Date: Tue, 3 Mar 2026 20:05:11 +0000 Subject: feature(main): loading and printing csv file --- source/base/base_os.h | 41 +++++++++++++---------------------------- 1 file changed, 13 insertions(+), 28 deletions(-) (limited to 'source/base/base_os.h') diff --git a/source/base/base_os.h b/source/base/base_os.h index ec0a3de..23587c6 100644 --- a/source/base/base_os.h +++ b/source/base/base_os.h @@ -14,39 +14,24 @@ load_file(const char *path) { string8 result = {0}; struct stat sbuf = {0}; - int err = 0; + i32 file = open(path, O_RDONLY); + if(file == -1) return result; - if(file) + if(fstat(file, &sbuf) == -1) { + print("error: fstat failed"); + close(file); + return result; + } - if(file != -1) - { - err = fstat(file, &sbuf); - check(err != -1); - - result.size = (u64)sbuf.st_size; - - if(result.size != 0) - { - result.data = (u8 *)mmap(0, - result.size, - PROT_READ, - MAP_PRIVATE, - file, - 0); - - check(result.data != MAP_FAILED); - } - - close(file); - } - else - { - // TODO(nasr): logging - } - + result.size = (u64)sbuf.st_size; + if(result.size != 0) + { + result.data = (u8 *)mmap(0, result.size, PROT_READ, MAP_PRIVATE, file, 0); } + + close(file); return result; } -- cgit v1.3