diff options
| author | gingerBill <bill@gingerbill.org> | 2021-09-18 12:52:43 +0100 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2021-09-18 12:52:43 +0100 |
| commit | 05ac2002e0296c3acccca1d8cffaafb002e43120 (patch) | |
| tree | f809fac39673bc362f2a3b5958a65812d65701bb /src/tokenizer.cpp | |
| parent | 73427d3ab3d63553fc1fc208815222c0ccb8e084 (diff) | |
Force file copy on `odin strip-semicolon`
Diffstat (limited to 'src/tokenizer.cpp')
| -rw-r--r-- | src/tokenizer.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/tokenizer.cpp b/src/tokenizer.cpp index 2251b4f96..97836bd1b 100644 --- a/src/tokenizer.cpp +++ b/src/tokenizer.cpp @@ -722,6 +722,8 @@ struct Tokenizer { i32 error_count; bool insert_semicolon; + + MemoryMappedFile memory_mapped_file; }; @@ -811,17 +813,17 @@ TokenizerInitError memory_mapped_file_error_map_to_tokenizer[MemoryMappedFile_CO TokenizerInit_Permission, /*MemoryMappedFile_Permission*/ }; -TokenizerInitError init_tokenizer_from_fullpath(Tokenizer *t, String const &fullpath) { - MemoryMappedFile memory_mapped_file = {}; +TokenizerInitError init_tokenizer_from_fullpath(Tokenizer *t, String const &fullpath, bool copy_file_contents) { MemoryMappedFileError mmf_err = memory_map_file_32( alloc_cstring(temporary_allocator(), fullpath), - &memory_mapped_file + &t->memory_mapped_file, + copy_file_contents ); TokenizerInitError err = memory_mapped_file_error_map_to_tokenizer[mmf_err]; switch (mmf_err) { case MemoryMappedFile_None: - init_tokenizer_with_data(t, fullpath, memory_mapped_file.data, cast(isize)memory_mapped_file.size); + init_tokenizer_with_data(t, fullpath, t->memory_mapped_file.data, cast(isize)t->memory_mapped_file.size); break; case MemoryMappedFile_FileTooLarge: case MemoryMappedFile_Empty: |