From 28d993a8e85651e6e8a61b410472febc6069ceb0 Mon Sep 17 00:00:00 2001 From: Martin Ziemer Date: Thu, 4 Apr 2024 15:33:14 +0200 Subject: [PATCH] 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. --- src/nnn.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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!");