diff --git a/hecl/extern/Athena b/hecl/extern/Athena index 09033d90c..8df75c8f2 160000 --- a/hecl/extern/Athena +++ b/hecl/extern/Athena @@ -1 +1 @@ -Subproject commit 09033d90cca4d159fffda73ef12e08cc85aadec6 +Subproject commit 8df75c8f23e32c38c7a9735fcc06538fbf412660 diff --git a/hecl/include/HECL/HECL.hpp b/hecl/include/HECL/HECL.hpp index 1f72f64fa..07f72cda0 100644 --- a/hecl/include/HECL/HECL.hpp +++ b/hecl/include/HECL/HECL.hpp @@ -301,6 +301,28 @@ static inline FILE* Fopen(const SystemChar* path, const SystemChar* mode, FileLo return fp; } +static inline int FSeek(FILE* fp, int64_t offset, int whence) +{ +#if _WIN32 + return _fseeki64(fp, offset, whence); +#elif __APPLE__ || __FreeBSD__ + return fseeko(fp, offset, whence); +#else + return fseeko64(fp, offset, whence); +#endif +} + +static inline int64_t FTell(FILE* fp) +{ +#if _WIN32 + return _ftelli64(fp); +#elif __APPLE__ || __FreeBSD__ + return ftello(fp); +#else + return ftello64(fp); +#endif +} + static inline int Rename(const SystemChar* oldpath, const SystemChar* newpath) { #if HECL_UCS2