From e2dae4345b7cb9ec92e204a8bf2ab3dee8fcb9ac Mon Sep 17 00:00:00 2001 From: Dan Goodliffe Date: Tue, 21 Feb 2023 00:48:02 +0000 Subject: Add checked_fopen wrapper and FileStar container --- lib/filesystem.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'lib/filesystem.cpp') diff --git a/lib/filesystem.cpp b/lib/filesystem.cpp index 0e19e8d..7e8ab9c 100644 --- a/lib/filesystem.cpp +++ b/lib/filesystem.cpp @@ -62,4 +62,13 @@ namespace filesystem { { return memmap {length, prot, flags, h, static_cast(offset)}; } + + FILE * + checked_fopen(const char * pathname, const char * mode) + { + if (auto file = fopen(pathname, mode)) { + return file; + } + throw_filesystem_error("fopen", errno, pathname); + } } -- cgit v1.2.3