# trivial: O_EXCL makes O_TRUNC redundant

1 messages from 2006-01-05 to 2006-01-05. Participants: Alex Riesen.
Thread: https://gitlist.dev/t/2970

## Alex Riesen, 2006-01-05 08:58

Subject: trivial: O_EXCL makes O_TRUNC redundant
Message-ID: <81b0412b0601050058y27eb492fu9a24f99e32e9f439@mail.gmail.com>
URL: https://gitlist.dev/e/81b0412b0601050058y27eb492fu9a24f99e32e9f439%40mail.gmail.com

```
Signed-off-by: Alex Riesen <raa.lkml@gmail.com>


Subject: [PATCH] O_EXCL makes O_TRUNC redundant

Signed-off-by: Alex Riesen <raa.lkml@gmail.com>


---

 apply.c |    2 +-
 entry.c |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

4d5e4d8d468c0eedf489104e9f02f86c635c8ac2
diff --git a/apply.c b/apply.c
index d5e7bfd..9eba034 100644
--- a/apply.c
+++ b/apply.c
@@ -1588,7 +1588,7 @@ static int try_create_file(const char *p
 
 	if (S_ISLNK(mode))
 		return symlink(buf, path);
-	fd = open(path, O_CREAT | O_EXCL | O_WRONLY | O_TRUNC, (mode & 0100) ? 0777 : 0666);
+	fd = open(path, O_CREAT | O_EXCL | O_WRONLY, (mode & 0100) ? 0777 : 0666);
 	if (fd < 0)
 		return -1;
 	while (size) {
diff --git a/entry.c b/entry.c
index 15b34eb..410b758 100644
--- a/entry.c
+++ b/entry.c
@@ -60,7 +60,7 @@ static void remove_subtree(const char *p
 static int create_file(const char *path, unsigned int mode)
 {
 	mode = (mode & 0100) ? 0777 : 0666;
-	return open(path, O_WRONLY | O_TRUNC | O_CREAT | O_EXCL, mode);
+	return open(path, O_WRONLY | O_CREAT | O_EXCL, mode);
 }
 
 static int write_entry(struct cache_entry *ce, const char *path, struct checkout *state)
-- 
1.0.GIT

```
