From bf0d18bc00f91b65e760b20b305366d04756338e Mon Sep 17 00:00:00 2001 From: Krzosa Karol Date: Sun, 28 Jan 2024 08:59:24 +0100 Subject: [PATCH] TestClexer fix for github ubuntu worker --- core_library/filesystem.c | 6 +++++- tests/test_lexer.cpp | 3 ++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/core_library/filesystem.c b/core_library/filesystem.c index f35bf3a..7a86a34 100644 --- a/core_library/filesystem.c +++ b/core_library/filesystem.c @@ -618,6 +618,11 @@ OS_API OS_Result OS_AppendFile(S8_String path, S8_String string) { } OS_API S8_String OS_ReadFile(MA_Arena *arena, S8_String path) { + // ftell returns insane size if file is a directory **on some machines** KEKW + if (OS_IsDir(path)) { + return {}; + } + MA_Checkpoint scratch = MA_GetScratch1(arena); path = S8_Copy(scratch.arena, path); @@ -628,7 +633,6 @@ OS_API S8_String OS_ReadFile(MA_Arena *arena, S8_String path) { result.len = ftell(f); fseek(f, 0, SEEK_SET); - IO_Printf("Reading: %.*s, size: %lld\n", S8_Expand(path), result.len); result.str = (char *)MA_PushSizeNonZeroed(arena, result.len + 1); fread(result.str, result.len, 1, f); result.str[result.len] = 0; diff --git a/tests/test_lexer.cpp b/tests/test_lexer.cpp index a8ed955..91ec22f 100644 --- a/tests/test_lexer.cpp +++ b/tests/test_lexer.cpp @@ -12,11 +12,12 @@ void TestLexDir(S8_String dir) { char msg_buff[1024]; for (OS_FileIter iter = OS_IterateFiles(scratch_filenames, dir); OS_IsValid(iter); OS_Advance(&iter)) { MA_Scratch scratch(scratch_filenames.checkpoint); + if (iter.is_directory) continue; S8_String file = OS_ReadFile(scratch, iter.absolute_path); if (!file.str) continue; - CL_Lexer lexer = CL_Begin(scratch, file.str, iter.absolute_path.str); + CL_Lexer lexer = CL_Begin(scratch, file.str, iter.absolute_path.str); for (int i = 0;; i += 1) { CL_Token token = CL_Next(&lexer); if (token.kind == CL_EOF) break;