[chore] It can possible kill someone

Signed-off-by: Caio Oliveira <caiooliveirafarias0@gmail.com>
This commit is contained in:
Caio Oliveira 2026-01-07 19:37:21 -03:00 committed by crueter
parent 54a9dd2f31
commit 079546a1d2
2 changed files with 12 additions and 0 deletions

View File

@ -403,7 +403,11 @@ void IOFile::Open(const fs::path& path, FileAccessMode mode, FileType type, File
}
void IOFile::Close() {
#if defined(__APPLE__)
// NO IMPLEMENTATION YET
#else
PlatformUnmap(*this);
#endif
if (file) {
errno = 0;
const auto close_result = std::fclose(file) == 0;

View File

@ -322,7 +322,11 @@ public:
static_assert(!std::is_pointer_v<T>, "T must not be a pointer to an object.");
if (IsMappedFile()) {
std::memcpy(&object, mmap_base + mmap_offset, sizeof(T));
#ifdef _WIN32
return sizeof(T) != 0;
#else
return sizeof(T);
#endif
}
return IsOpen() ? std::fread(&object, sizeof(T), 1, file) == 1 : false;
}
@ -348,7 +352,11 @@ public:
static_assert(!std::is_pointer_v<T>, "T must not be a pointer to an object.");
if (IsMappedFile()) {
std::memcpy(mmap_base + mmap_offset, &object, sizeof(T));
#ifdef _WIN32
return sizeof(T) != 0;
#else
return sizeof(T);
#endif
}
return IsOpen() ? std::fwrite(&object, sizeof(T), 1, file) == 1 : false;
}