diff --git a/Include/Aurora/IO/FS/FileReader.hpp b/Include/Aurora/IO/FS/FileReader.hpp index 059079d7..6ea189ce 100644 --- a/Include/Aurora/IO/FS/FileReader.hpp +++ b/Include/Aurora/IO/FS/FileReader.hpp @@ -26,7 +26,7 @@ namespace Aurora::IO::FS virtual EStreamError Open() override { - return stream_ ? EStreamError::eErrorNone : EStreamError::eErrorStreamInterrupted; + return stream_ ? EStreamError::eErrorNone : EStreamError::eErrorStreamNotOpen; } virtual EStreamError Read(const Memory::MemoryViewStreamWrite ¶mters) override diff --git a/Include/Aurora/IO/FS/FileWriter.hpp b/Include/Aurora/IO/FS/FileWriter.hpp index b9cc50fa..b7d00975 100644 --- a/Include/Aurora/IO/FS/FileWriter.hpp +++ b/Include/Aurora/IO/FS/FileWriter.hpp @@ -26,7 +26,7 @@ namespace Aurora::IO::FS virtual EStreamError Open() override { - return stream_ ? EStreamError::eErrorNone : EStreamError::eErrorStreamInterrupted; + return stream_ ? EStreamError::eErrorNone : EStreamError::eErrorStreamNotOpen; } virtual EStreamError Write(const Memory::MemoryViewStreamRead & parameters) override diff --git a/Include/Aurora/Memory/ByteBuffer.hpp b/Include/Aurora/Memory/ByteBuffer.hpp index 4ae5ec92..a2345fda 100644 --- a/Include/Aurora/Memory/ByteBuffer.hpp +++ b/Include/Aurora/Memory/ByteBuffer.hpp @@ -240,7 +240,7 @@ namespace Aurora::Memory inline ByteBuffer &operator =(ByteBuffer &&); // &byteArray[n] - inline AuUInt8 &operator [](AuUInt idx); + inline AuUInt8 &operator [](AuUInt idx) const; // if (byteArray) -> if (byteArray->IsValid()) inline operator bool() const; diff --git a/Include/Aurora/Memory/ByteBuffer_Utils.inl b/Include/Aurora/Memory/ByteBuffer_Utils.inl index 8ce742e1..f6e11b9e 100644 --- a/Include/Aurora/Memory/ByteBuffer_Utils.inl +++ b/Include/Aurora/Memory/ByteBuffer_Utils.inl @@ -39,7 +39,7 @@ namespace Aurora::Memory Reserve(size); } - AuUInt8 &ByteBuffer::operator [](AuUInt idx) + AuUInt8 &ByteBuffer::operator [](AuUInt idx) const { return *(data() + idx); } diff --git a/Include/AuroraTypedefs.hpp b/Include/AuroraTypedefs.hpp index d6c5ec62..845cf138 100644 --- a/Include/AuroraTypedefs.hpp +++ b/Include/AuroraTypedefs.hpp @@ -232,7 +232,7 @@ namespace Aurora::Memory } template -using AuList = typename std::conditional, AURORA_RUNTIME_AU_LIST, AURORA_RUNTIME_AU_LIST>>::type; +using AuList = AuConditional_t, AURORA_RUNTIME_AU_LIST, AURORA_RUNTIME_AU_LIST>>; #endif diff --git a/Source/Debug/Panic.cpp b/Source/Debug/Panic.cpp index 8441e45a..728869ba 100644 --- a/Source/Debug/Panic.cpp +++ b/Source/Debug/Panic.cpp @@ -9,7 +9,7 @@ #include "Debug.hpp" #include "Panic.hpp" //#include -#include +#include namespace Aurora::Debug { @@ -40,6 +40,13 @@ namespace Aurora::Debug AUKN_SYM void Panic() { + // + static bool handlingFatal = false; + if (AuExchange(handlingFatal, true)) + { + goto failFast; + } + DebugBreak(); try @@ -53,7 +60,7 @@ namespace Aurora::Debug try { - Console::ConsoleFIO::Flush(); + Console::ForceFlush(); } catch (...) { @@ -73,13 +80,7 @@ namespace Aurora::Debug } } - // - static bool handlingFatal = false; - if (AuExchange(handlingFatal, true)) - { - std::terminate(); - } - + failFast: #if defined(AURORA_IS_MODERNNT_DERIVED) __fastfail('FCKD'); #else