diff --git a/Kernel/KResult.h b/Kernel/KResult.h index 4108b88947..b0c7a67f37 100644 --- a/Kernel/KResult.h +++ b/Kernel/KResult.h @@ -53,7 +53,11 @@ public: KResultOr(KResultOr&& other) { - new (&m_storage) T(move(other.value())); + m_is_error = other.m_is_error; + if (m_is_error) + m_error = other.m_error; + else + new (&m_storage) T(move(other.value())); other.m_is_error = true; other.m_error = KSuccess; }