From 7c0cb8ce68667e7fe942bc349696946597cfc127 Mon Sep 17 00:00:00 2001 From: "seer-by-sentry[bot]" <157164994+seer-by-sentry[bot]@users.noreply.github.com> Date: Mon, 17 Aug 2026 11:04:14 +0000 Subject: [PATCH] fix: null-guard Add_Engine_Ref for vertex/index buffers --- Core/Libraries/Source/WWVegas/WW3D2/dx8wrapper.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Core/Libraries/Source/WWVegas/WW3D2/dx8wrapper.cpp b/Core/Libraries/Source/WWVegas/WW3D2/dx8wrapper.cpp index 77774ddd664..e69f584cb10 100644 --- a/Core/Libraries/Source/WWVegas/WW3D2/dx8wrapper.cpp +++ b/Core/Libraries/Source/WWVegas/WW3D2/dx8wrapper.cpp @@ -1933,7 +1933,7 @@ void DX8Wrapper::Set_Vertex_Buffer(const DynamicVBAccessClass& vba_) render_state.vba_offset = vba.VertexBufferOffset; render_state.vba_count = vba.Get_Vertex_Count(); REF_PTR_SET(render_state.vertex_buffers[0], vba.VertexBuffer); - render_state.vertex_buffers[0]->Add_Engine_Ref(); + if (render_state.vertex_buffers[0]) render_state.vertex_buffers[0]->Add_Engine_Ref(); render_state_changed |= VERTEX_BUFFER_CHANGED; render_state_changed |= INDEX_BUFFER_CHANGED; // vba_offset changes so index buffer needs to be reset as well. } @@ -1953,7 +1953,7 @@ void DX8Wrapper::Set_Index_Buffer(const DynamicIBAccessClass& iba_, unsigned sho render_state.index_buffer_type = iba.Get_Type(); render_state.iba_offset = iba.IndexBufferOffset; REF_PTR_SET(render_state.index_buffer, iba.IndexBuffer); - render_state.index_buffer->Add_Engine_Ref(); + if (render_state.index_buffer) render_state.index_buffer->Add_Engine_Ref(); render_state_changed |= INDEX_BUFFER_CHANGED; }