Work around a bug in fast_io
This commit is contained in:
+5
-3
@@ -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;
|
||||||
|
|||||||
Reference in New Issue
Block a user