From 2b6f8123e925e3be8ce7c04eccdd49fc728314a5 Mon Sep 17 00:00:00 2001 From: Roland Reichwein Date: Tue, 3 Jan 2023 09:31:51 +0100 Subject: Separated out libcommon as libreichwein --- libcommon/tempfile.cpp | 42 ------------------------------------------ 1 file changed, 42 deletions(-) delete mode 100644 libcommon/tempfile.cpp (limited to 'libcommon/tempfile.cpp') diff --git a/libcommon/tempfile.cpp b/libcommon/tempfile.cpp deleted file mode 100644 index f425db2..0000000 --- a/libcommon/tempfile.cpp +++ /dev/null @@ -1,42 +0,0 @@ -#include "tempfile.h" - -#include -#include -#include - -#include - -namespace fs = std::filesystem; -using namespace std::string_literals; - -fs::path Tempfile::GetPath() const -{ - return m_path; -} - -Tempfile::Tempfile(const std::filesystem::path& extension) -{ - try { - fs::path path { fs::temp_directory_path() / "tempfileXXXXXX"}; - if (!extension.empty()) - path += extension; - - fs::path::string_type name{path.native()}; - int fd = mkstemps(name.data(), extension.native().size()); - if (fd == -1) - std::runtime_error("mkstemps: "s + strerror(errno)); - close(fd); - m_path = std::string{name}; - } catch (const std::exception& ex) { - throw std::runtime_error("Tempfile error: "s + ex.what()); - } -} - -Tempfile::~Tempfile() -{ - try { - fs::remove_all(m_path); - } catch (const std::exception& ex) { - std::cerr << "Warning: Couldn't remove temporary file " << m_path << std::endl; - } -} -- cgit v1.2.3