summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Ziemer <gituser@horrad.de>2024-04-04 15:33:14 +0200
committerMartin Ziemer <gituser@horrad.de>2024-04-04 15:57:36 +0200
commit28d993a8e85651e6e8a61b410472febc6069ceb0 (patch)
tree9778f6651f531863f64fc4ca9cedfbd833ad407f
parent22aa1455a6081ace0e1b1c09435a447296f914bf (diff)
Fix file creation on OpenBSD
On OpenBSD at least one of O_RDONLY, O_WRONLY or O_RDWR is needed to open a file. In creating a new file none of those is set, which leads to an EINVAL error ("invalid argument"). Since the new file is only created and never read, I chose to use O_WRONLY.
-rw-r--r--src/nnn.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/nnn.c b/src/nnn.c
index 416e0ca8..0fb74833 100644
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -4732,7 +4732,7 @@ next:
return FALSE;
}
} else {
- int fd = open(path, O_CREAT | O_TRUNC, S_IWUSR | S_IRUSR); /* Forced create mode for files */
+ int fd = open(path, O_WRONLY | O_CREAT | O_TRUNC, S_IWUSR | S_IRUSR); /* Forced create mode for files */
if (fd == -1 && errno != EEXIST) {
DPRINTF_S("open!");