Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
We had too many warnings lately... was awaiting that someone would kill them - didn't happen -> goes to my commit ratio! :P
|
|
* Fix BLI_file_touch, used to add one dummy byte ((unsigned char)EOF) to empty files!
* Get rid of static global temp string in WIN32 area (very bad, and useless!).
* Get rid of paranoid NULL checks in WIN32's BLI_gzopen().
* Add non-relative filename asserts to WIN32 file operations too.
* ifdef-out BLI_move and BLI_create_symlink, unused (and the later is not even implemented for windows).
Partly based on patch and points raised by Jason Wilkins (jwilkins) in T32870, thanks!
|
|
The mystery here is, how MSVC could not break on such error? :(
|
|
Missed adding return value in one place.
Thanks a lot to Thomas Szepe for reporting the issue and finding the solution!
Question remains: how could MSVC allow such a code to compile in some cases
(own win64 + scons buildbot win32 were OK with that it seems!).
Crappy compiler, not comming to the rescue of stupid dev...
|
|
Handy to know directly whether a file creation succeeded or not.
Also, made a few more changes in this func, and harmonized a bit win32/*nix versions.
|
|
|
|
Or how to epic fail a fix when working on two different systems.
Or how to increase your commit rate.
|
|
There was two different issues here actually:
* Own (very high) stupidity only gave 8 chars to file name (sic).
* list dir returns dirpaths without a trailing slahs, but expects them to have it it seems. :|
|
|
This is typically an error (& hangs a few seconds on win32), best catch early.
|
|
Also, avoid calling ugly strcmp with '.' or '..', making direct char checks is
much cheaper here!
|
|
Makes usage of those funcs much more clear, we even had mixed '!strcmp(foo, bar)'
and 'strcmp(foo, bar) == 0' in several places...
|
|
Also, add an optional callback to `BLI_filelist_free()` to allow freein
void poin if needed (consistency with `BLI_filelist_duplicate()`...).
|
|
|
|
Writing compressed files would write the uncompressed blend, then re-compress on-disk.
Use a wrapper for open/write/close commands
|
|
|
|
Sigh, why can't all unix have same includes? :/
|
|
Don't know when this sneaked in, I did wrote that part of the patch on win VM with MSVC2013... :/
Note: letting asside warnings for now, then should not prevent building anyway.
|
|
Current temporary data of Blender suffers one major issue - default 'temp' dir on Windows is never
automatically cleaned up, and can end being quite big when used by Blender, especially when we have
to store per-process data (using getpid() in file names).
To address this, this patch:
* Divides tempdir paths in two, one for 'base' temp dir (the same as previous unique tempdir path),
the other is a mkdtemp-generated sub-dir, specific to each Blender instance.
* Only uses base tempdir when we need some shallow persistance accross Blender sessions - and we always
reuse the same filename (quit.blend...) or generate small file (crash reports...).
* Uses temp sub-dir for heavy files like pointcache or renderEXRs (Save Buffer option).
* Erases temp sub-dir on quit or crash.
To get this working it also adds a working 'recursive delete' to BLI_delete() under Windows.
Note that, as in current code, the 'recover render result' hack-feature that was possible
with SaveBuffer option is still removed. A real renderresult cache feature will be added
soon, though.
Reviewers: campbellbarton, brecht, sergey
Reviewed By: campbellbarton, sergey
CC: sergey
Differential Revision: https://developer.blender.org/D531
|
|
|
|
Opted to keep includes if they are used indirectly (even if removing is possible).
|
|
|
|
|
|
|
|
only ever wrapped printf.
|
|
|
|
replaces BLI_join_dirfile when the dir and the destimation were the same.
|
|
character. also remove some dead code (return directly after return).
|
|
characters on Windows.
Replaced some uses of stat() by BLI_stat() to properly handle such filepaths.
|
|
remove MEM_sys_types.h which was a duplicate.
|
|
|
|
compressed files we were not passing the full wide char path to zlib, so not
all file names worked. Now we use gzopen_w available in new zlib versions.
Patch by Tamito Kajiyama, I added an extra check for the zlib version so it
keeps compiling with older versions for now.
For platform maintainers:
Part of this commit are zlib 1.2.8 libraries for windows 32 bit. We still
need update libraries for windows 64 bit and mingw. There's a readme.txt
and build.bat included with instructions on how to build.
|
|
|
|
|
|
where possible.
also found unintentionally defined enum/struct variables that where only meant to be defining the type.
|
|
Problem was the new usage of access() on Windows, this doesn't accept X_OK. Also wrapped _waccess so that UTF-8 paths work.
|
|
the file even if renaming failed.
- found when testing recursive_operation().
|
|
from Lawrence D'Oliveiro (ldo)
Fix potential memory leaks in recursive_operation while simplifying cleanup logic.
|
|
|
|
path_util_split_dirstring_2.patch, path_util_split_dirstring_3.patch
from Lawrence D'Oliveiro (ldo)
Get rid of BLI_splitdirstring, replace with calls to BLI_split_dirfile, BLI_split_dir_part and BLI_split_file_part as appropriate.
|
|
from Lawrence D'Oliveiro (ldo)
More efficient implementation of BLI_file_is_writable using access(2) instead of actually opening file.
|
|
from Lawrence D'Oliveiro (ldo)
Add comments and use of bool type in fileops.c
|
|
path_util_1.patch from Lawrence D'Oliveiro (ldo)
|
|
|
|
now blenlib/BLI doesn't depend on any blenkern/BKE functions,
there are still some bad level includes but these are only to access G.background and the blender version define.
|
|
wm_window_title.
|
|
Used the same hack as BLI gzip is using -- calculate short path and
send it to OCIO library.
|
|
|