From d9c818aa4084476e88159001bb4b8fb2e2b9cf36 Mon Sep 17 00:00:00 2001 From: cdozdil Date: Sat, 17 May 2025 13:23:23 +0300 Subject: [PATCH] Fix crash when OptiFG is disabled --- OptiScaler/inputs/FfxApi_Dx12.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/OptiScaler/inputs/FfxApi_Dx12.cpp b/OptiScaler/inputs/FfxApi_Dx12.cpp index c5c73d48..df171a22 100644 --- a/OptiScaler/inputs/FfxApi_Dx12.cpp +++ b/OptiScaler/inputs/FfxApi_Dx12.cpp @@ -335,13 +335,14 @@ ffxReturnCode_t ffxDestroyContext_Dx12(ffxContext* context, const ffxAllocationC _nvParams.erase(*context); _initParams.erase(*context); - LOG_DEBUG("context: {:X}, SwapchainContext: {:X}, FGContext: {:X}", - (size_t)(*context), (size_t)State::Instance().currentFG->SwapchainContext(), (size_t)State::Instance().currentFG->FrameGenerationContext()); + if (State::Instance().currentFG != nullptr) + LOG_DEBUG("context: {:X}, SwapchainContext: {:X}, FGContext: {:X}", + (size_t)(*context), (size_t)State::Instance().currentFG->SwapchainContext(), (size_t)State::Instance().currentFG->FrameGenerationContext()); if (!State::Instance().isShuttingDown && (!upscalerContext || Config::Instance()->EnableHotSwapping.value_or_default()) && (State::Instance().activeFgType != OptiFG || State::Instance().currentFG == nullptr || State::Instance().currentFG->SwapchainContext() != (*context))) { - auto cdResult = FfxApiProxy::D3D12_DestroyContext()(context, memCb); + auto cdResult = FfxApiProxy::D3D12_DestroyContext()(context, memCb); LOG_INFO("result: {:X}", (UINT)cdResult); }