Compare commits

..

No commits in common. "7a21b20711e54f473584e9a78b9e132d10d33883" and "92e9d9cbfcbddf60ffa5dd579b14243b44dfd5ea" have entirely different histories.

4 changed files with 10 additions and 8 deletions

View File

@ -30,7 +30,7 @@ class AnyPtrT {
template<typename T> template<typename T>
struct Wrap final: WrapBase { struct Wrap final: WrapBase {
T *data{}; T *data{};
explicit constexpr Wrap(T *pData) noexcept: data(pData) { constexpr Wrap(T *pData) noexcept: data(pData) {
} }
constexpr WrapBase *copyTo(ox::Span<char> s) noexcept override { constexpr WrapBase *copyTo(ox::Span<char> s) noexcept override {
oxAssert(s.size() >= sizeof(Wrap), "too small buffer"); oxAssert(s.size() >= sizeof(Wrap), "too small buffer");
@ -44,7 +44,7 @@ class AnyPtrT {
return data != nullptr; return data != nullptr;
} }
constexpr void free() noexcept override { constexpr void free() noexcept override {
safeDelete(data); ox::safeDelete(data);
data = {}; data = {};
} }
}; };

View File

@ -17,9 +17,11 @@ namespace nostalgia::core {
class Context; class Context;
void safeDelete(Context *ctx) noexcept; struct ContextDeleter {
void operator()(Context *p) noexcept;
};
using ContextUPtr = ox::UPtr<Context>; using ContextUPtr = ox::UPtr<Context, ContextDeleter>;
ox::Result<ContextUPtr> init(turbine::Context &tctx, InitParams const&params = {}) noexcept; ox::Result<ContextUPtr> init(turbine::Context &tctx, InitParams const&params = {}) noexcept;

View File

@ -10,8 +10,8 @@
namespace nostalgia::core { namespace nostalgia::core {
void safeDelete(Context *ctx) noexcept { void ContextDeleter::operator()(Context *p) noexcept {
delete ctx; ox::safeDelete(p);
} }
Context::Context(turbine::Context &tctx) noexcept: turbineCtx(tctx) { Context::Context(turbine::Context &tctx) noexcept: turbineCtx(tctx) {

View File

@ -7,8 +7,8 @@
namespace nostalgia::core { namespace nostalgia::core {
void safeDelete(Context *ctx) noexcept { void ContextDeleter::operator()(Context *p) noexcept {
delete ctx; ox::safeDelete(p);
} }
Context::Context(turbine::Context &tctx, InitParams const&params) noexcept: Context::Context(turbine::Context &tctx, InitParams const&params) noexcept: