[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Lost] [Patch] LostIO - truncate bei fopen(..., "w")



Dieser Patch führt das Flag Truncate ein, wenn eine Datei mit fopen(...,
"w"); geoeffnet wird.
Index: src/modules/include/io.h
===================================================================
--- src/modules/include/io.h	(Revision 616)
+++ src/modules/include/io.h	(Arbeitskopie)
@@ -45,7 +45,7 @@
 #define IO_OPEN_MODE_READ 1
 #define IO_OPEN_MODE_WRITE 2
 #define IO_OPEN_MODE_APPEND 4
-#define IO_OPEN_MODE_BINARY 8
+#define IO_OPEN_MODE_TRUNC 8
 #define IO_OPEN_MODE_DIRECTORY 16
 #define IO_OPEN_MODE_CREATE 32
 #define IO_OPEN_MODE_LINK 64
Index: src/modules/lib/stdlibc/file.c
===================================================================
--- src/modules/lib/stdlibc/file.c	(Revision 616)
+++ src/modules/lib/stdlibc/file.c	(Arbeitskopie)
@@ -74,6 +74,14 @@
 
             case 'w':
                 *attr |= IO_OPEN_MODE_WRITE | IO_OPEN_MODE_CREATE;
+
+                // Wenn w+ muss Lesen auch aktiviert werden dafuer truncate
+                // nicht
+                if (mode[i + 1] == '+') {
+                    *attr |= IO_OPEN_MODE_READ;
+                } else {
+                    *attr |= IO_OPEN_MODE_TRUNC;
+                }
                 break;
 
             case 'a':