Browse Source

f you msvc

mmap-fixews
Caio Oliveira 6 days ago
committed by crueter
parent
commit
e8029c9493
  1. 6
      src/common/fs/file.cpp
  2. 6
      src/common/fs/file.h

6
src/common/fs/file.cpp

@ -530,13 +530,13 @@ bool IOFile::Seek(s64 offset, SeekOrigin origin) const {
// fuck you to whoever made this method const // fuck you to whoever made this method const
switch (origin) { switch (origin) {
case SeekOrigin::SetOrigin: case SeekOrigin::SetOrigin:
mmap_offset = off_t(offset);
mmap_offset = s64(offset);
break; break;
case SeekOrigin::CurrentPosition: case SeekOrigin::CurrentPosition:
mmap_offset += off_t(offset);
mmap_offset += s64(offset);
break; break;
case SeekOrigin::End: case SeekOrigin::End:
mmap_offset = off_t(mmap_size) + off_t(offset);
mmap_offset = s64(mmap_size) + s64(offset);
break; break;
} }
return true; return true;

6
src/common/fs/file.h

@ -323,7 +323,7 @@ public:
if (IsMappedFile()) { if (IsMappedFile()) {
std::memcpy(&object, mmap_base + mmap_offset, sizeof(T)); std::memcpy(&object, mmap_base + mmap_offset, sizeof(T));
#ifdef _WIN32 #ifdef _WIN32
return sizeof(T) != 0;
return bool(sizeof(T));
#else #else
return sizeof(T); return sizeof(T);
#endif #endif
@ -442,7 +442,7 @@ public:
[[nodiscard]] s64 Tell() const; [[nodiscard]] s64 Tell() const;
#ifdef _WIN32 #ifdef _WIN32
inline bool IsMappedFile() const noexcept { return file_handle != nullptr; }
inline bool IsMappedFile() const noexcept { return mapping_handle != nullptr; }
#else // POSIX #else // POSIX
inline bool IsMappedFile() const noexcept { return mmap_fd != -1; } inline bool IsMappedFile() const noexcept { return mmap_fd != -1; }
#endif #endif
@ -462,7 +462,7 @@ public:
#endif #endif
u8* mmap_base = nullptr; u8* mmap_base = nullptr;
size_t mmap_size = 0; size_t mmap_size = 0;
mutable off_t mmap_offset = 0; // fuck you
mutable s64 mmap_offset = 0; // fuck you
}; };
} // namespace Common::FS } // namespace Common::FS
Loading…
Cancel
Save