[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [21560] branches/blender2.5/blender/source /blender/blenlib/intern/fileops.c: 2.5: bugfix for BLI_is_writable, made render with Save Buffers
Brecht Van Lommel
brecht at blender.org
Mon Jul 13 20:47:09 CEST 2009
Revision: 21560
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=21560
Author: blendix
Date: 2009-07-13 20:47:08 +0200 (Mon, 13 Jul 2009)
Log Message:
-----------
2.5: bugfix for BLI_is_writable, made render with Save Buffers
not work anymore. Now it first tries to open the file without
truncating, and only then tries to create a new file.
Modified Paths:
--------------
branches/blender2.5/blender/source/blender/blenlib/intern/fileops.c
Modified: branches/blender2.5/blender/source/blender/blenlib/intern/fileops.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenlib/intern/fileops.c 2009-07-13 12:17:07 UTC (rev 21559)
+++ branches/blender2.5/blender/source/blender/blenlib/intern/fileops.c 2009-07-13 18:47:08 UTC (rev 21560)
@@ -153,10 +153,24 @@
{
int file;
+ /* first try to open without creating */
file = open(filename, O_BINARY | O_RDWR, 0666);
- if (file < 0)
- return 0;
+ if (file < 0) {
+ /* now try to open and create. a test without actually
+ * creating a file would be nice, but how? */
+ file = open(filename, O_BINARY | O_RDWR | O_CREAT, 0666);
+
+ if(file < 0) {
+ return 0;
+ }
+ else {
+ /* success, delete the file we create */
+ close(file);
+ BLI_delete(filename, 0, 0);
+ return 1;
+ }
+ }
else {
close(file);
return 1;
More information about the Bf-blender-cvs
mailing list