@@ -105,7 +105,7 @@ do_ftruncate_test (const char *filename)
} test_modes[] = {
{"r+", O_RDWR},
{"w", O_WRONLY},
- {"w+", O_RDWR},
+ {"w+", O_RDWR | O_TRUNC},
{"a", O_WRONLY},
{"a+", O_RDWR}
};
@@ -190,7 +190,7 @@ do_rewind_test (const char *filename)
size_t new_off;
} test_modes[] = {
{"w", O_WRONLY, 0, data_len},
- {"w+", O_RDWR, 0, data_len},
+ {"w+", O_RDWR | O_TRUNC, 0, data_len},
{"r+", O_RDWR, 0, data_len},
/* The new offsets for 'a' and 'a+' modes have to factor in the
previous writes since they always append to the end of the
@@ -295,7 +295,7 @@ do_ftell_test (const char *filename)
beginning of the file. After the write, the offset should be
updated to data_len. */
{"w", O_WRONLY, 0, data_len},
- {"w+", O_RDWR, 0, data_len},
+ {"w+", O_RDWR | O_TRUNC, 0, data_len},
{"r+", O_RDWR, 0, data_len},
/* For the 'a' mode, the initial file position should be the
current end of file. After the write, the offset has data_len
@@ -376,7 +376,7 @@ do_write_test (const char *filename)
int fd_mode;
} test_modes[] = {
{"w", O_WRONLY},
- {"w+", O_RDWR},
+ {"w+", O_RDWR | O_TRUNC},
{"r+", O_RDWR}
};