diff options
author | Ray Molenkamp <github@lazydodo.com> | 2020-03-18 21:13:03 +0300 |
---|---|---|
committer | Ray Molenkamp <github@lazydodo.com> | 2020-03-18 21:13:03 +0300 |
commit | 9a116c7c2d957e0e10a926eccc38dcb28cfec6e4 (patch) | |
tree | 620a9efd22d96e6fce9ec8cf8f1c6c0c2996b687 /source/blender/blenlib/BLI_fileops.h | |
parent | ac74a843d2775c834454ede9e3161e574f5b2e7c (diff) |
Cleanup: 64 bit file IO on windows.
Unlike Linux where fseek/tell will be either 32 or 64 bit
depending on the target platform, it will always be 32 bit
on windows.
We had some macro magic in BLI_winstuff.h that substituted
them for 64 bit versions, but that is upsetting the system
headers if they get included after BLI_winstuff.h which
is problematic for D6811.
This diff adds proper functions in blenlib and updates
all calls that were using the BLI_winstuff.h header to
gain 64 bit file IO.
note: Anything that was using the 32 bit versions (ie not
including BLI_winstuff.h) will still be using the 32 bit
versions, which is perhaps a good code quality Friday project.
Differential Revision: https://developer.blender.org/D7160
Reviewers: brecht dfelinto
Diffstat (limited to 'source/blender/blenlib/BLI_fileops.h')
-rw-r--r-- | source/blender/blenlib/BLI_fileops.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source/blender/blenlib/BLI_fileops.h b/source/blender/blenlib/BLI_fileops.h index d908c47b400..8596a60bc6a 100644 --- a/source/blender/blenlib/BLI_fileops.h +++ b/source/blender/blenlib/BLI_fileops.h @@ -70,6 +70,10 @@ typedef struct stat BLI_stat_t; int BLI_fstat(int fd, BLI_stat_t *buffer) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(); int BLI_stat(const char *path, BLI_stat_t *buffer) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(); +int64_t BLI_ftell(FILE *stream) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(); +int BLI_fseek(FILE *stream, int64_t offset, int whence); +int64_t BLI_lseek(int fd, int64_t offset, int whence); + #ifdef WIN32 int BLI_wstat(const wchar_t *path, BLI_stat_t *buffer); #endif |