diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-05-28 20:50:40 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-05-28 21:21:39 +0400 |
commit | 973f95fa9dfb21e4347a510f119c55b9673f6076 (patch) | |
tree | 9c08ca5e2803b3b816f4e443938a80ea9319df20 /source/blender/editors | |
parent | 74cc3974fea0422343b09bdd61e4d3924c62940a (diff) |
Fix T40157: Loading movies larger than 4GB in size fails
Issue was caused by _wstat returning EOVERFLOW error because
of file size didn't fit into stat structure which was using
long datatype.
The idea of this patch is to use _wstat64 and _stat64 structure
which is capable storing 64bit file sizes.
Made it a typedef for stat structure used by BLI_stat function
in order to make code easier to follow and avoid ifdefs all
over the place.
Additionally solved issue with BLI_exists which was wrongly
returning False in cases destination file is larger then 4GB.
Diffstat (limited to 'source/blender/editors')
-rw-r--r-- | source/blender/editors/space_file/filesel.c | 2 | ||||
-rw-r--r-- | source/blender/editors/space_text/text_ops.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/source/blender/editors/space_file/filesel.c b/source/blender/editors/space_file/filesel.c index e8371d7666b..81ab276ccc0 100644 --- a/source/blender/editors/space_file/filesel.c +++ b/source/blender/editors/space_file/filesel.c @@ -656,7 +656,7 @@ int autocomplete_directory(struct bContext *C, char *str, void *UNUSED(arg_v)) } else { char path[FILE_MAX]; - struct stat status; + BLI_stat_t status; BLI_join_dirfile(path, sizeof(path), dirname, de->d_name); diff --git a/source/blender/editors/space_text/text_ops.c b/source/blender/editors/space_text/text_ops.c index 0263b6cd912..fcd6fb3c179 100644 --- a/source/blender/editors/space_text/text_ops.c +++ b/source/blender/editors/space_text/text_ops.c @@ -458,7 +458,7 @@ static void txt_write_file(Text *text, ReportList *reports) { FILE *fp; TextLine *tmp; - struct stat st; + BLI_stat_t st; char filepath[FILE_MAX]; BLI_strncpy(filepath, text->name, FILE_MAX); |