Work around a bug in fast_io

This commit is contained in:
jeanlemotan
2024-09-08 16:09:16 +02:00
parent 259fe53aff
commit 7d21ffa1ee
+5 -3
View File
@@ -53,14 +53,16 @@ FileSink::FileSink(AbsPathView filepath, Mode mode, Flags flags) noexcept
{ {
case Mode::CreateOrOpen: case Mode::CreateOrOpen:
fmode |= fast_io::open_mode::creat; fmode |= fast_io::open_mode::creat;
// fall through break;
case Mode::Open: case Mode::Open:
break; break;
case Mode::CreateOrOpenAndClear: case Mode::CreateOrOpenAndClear:
fmode |= fast_io::open_mode::creat; //fmode |= fast_io::open_mode::creat; //cannot pass this, seems like a bug in fast_io. If it's passed, the mode reverts to OPEN_ALWAYS
// fall through fmode |= fast_io::open_mode::trunc;
break;
case Mode::OpenAndClear: case Mode::OpenAndClear:
fmode |= fast_io::open_mode::trunc; fmode |= fast_io::open_mode::trunc;
fmode |= fast_io::open_mode::excl;
break; break;
case Mode::CreateIfNew: case Mode::CreateIfNew:
fmode |= fast_io::open_mode::creat; fmode |= fast_io::open_mode::creat;