From a62559752c638a722ec42c707d8d36fa6ff71035 Mon Sep 17 00:00:00 2001 From: "Steinar H. Gunderson" Date: Fri, 25 Apr 2014 00:51:13 +0200 Subject: [PATCH] Fix O_TMPFILE usage. Seemingly open() needs to take a pathname only, not a full filename. This made us _always_ go into the mkstemp() path, which was of course not the intention. --- util.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/util.cpp b/util.cpp index 5659bed..8f42a98 100644 --- a/util.cpp +++ b/util.cpp @@ -18,9 +18,9 @@ using namespace std; int make_tempfile(const std::string &contents) { - char filename[] = "/tmp/cubemap.XXXXXX"; - int fd = open(filename, O_RDWR | O_TMPFILE, 0600); + int fd = open("/tmp", O_RDWR | O_TMPFILE, 0600); if (fd == -1) { + char filename[] = "/tmp/cubemap.XXXXXX"; mode_t old_umask = umask(077); fd = mkstemp(filename); if (fd == -1) { -- 2.39.2