From d2e7188e33a58cab05ef6292795303ad4b92a5f7 Mon Sep 17 00:00:00 2001 From: Bent Bisballe Nyeng Date: Sat, 7 Dec 2024 17:14:45 +0100 Subject: WIP --- test/tmpfile.h | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'test/tmpfile.h') diff --git a/test/tmpfile.h b/test/tmpfile.h index 5d114d0..e1a2ff6 100644 --- a/test/tmpfile.h +++ b/test/tmpfile.h @@ -4,7 +4,6 @@ #pragma once #include -#include #ifdef _WIN32 #define WIN32_LEAN_AND_MEAN @@ -12,6 +11,9 @@ #include #include #include +#include +#else +#include #endif struct tmp_file @@ -22,20 +24,28 @@ struct tmp_file #ifdef _WIN32 char templ[] = "ctor_tmp_file-XXXXXX"; // buffer for filename _mktemp_s(templ, sizeof(templ)); - fd = open(templ, O_CREAT | O_RDWR); + fd = _open(templ, O_CREAT | O_RDWR); + filename = templ; + auto sz = _write(fd, data.data(), data.size()); + (void)sz; + _close(fd); #else char templ[] = "/tmp/ctor_tmp_file-XXXXXX"; // buffer for filename fd = mkstemp(templ); -#endif filename = templ; auto sz = write(fd, data.data(), data.size()); (void)sz; close(fd); +#endif } ~tmp_file() { +#ifdef _WIN32 + _unlink(filename.data()); +#else unlink(filename.data()); +#endif } const std::string& get() const -- cgit v1.2.3