From: Steinar H. Gunderson Date: Thu, 24 Apr 2014 22:51:13 +0000 (+0200) Subject: Fix O_TMPFILE usage. X-Git-Tag: 1.1.0~11 X-Git-Url: https://git.sesse.net/?p=cubemap;a=commitdiff_plain;h=a62559752c638a722ec42c707d8d36fa6ff71035 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. --- 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) {