From e5deb6bc86ccf9a533fdf4448710d77de5e369f2 Mon Sep 17 00:00:00 2001 From: n00b87 Date: Sat, 8 Nov 2025 20:25:06 -0600 Subject: [PATCH] Fixed possible memory leak when using 3D primitives --- rcbasic_runtime/rc_windowclose.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/rcbasic_runtime/rc_windowclose.h b/rcbasic_runtime/rc_windowclose.h index c040214..ff851ee 100755 --- a/rcbasic_runtime/rc_windowclose.h +++ b/rcbasic_runtime/rc_windowclose.h @@ -532,18 +532,18 @@ bool rc_update() rc_physics3D.world->stepSimulation(rc_physics3D.DeltaTime*0.001f, rc_physics3D.maxSubSteps, fixed_timestep); } - for(int i = 0; i < rc_canvas.size(); i++) + for(int canvas_id = 0; canvas_id < rc_canvas.size(); i++) { - if(rc_canvas[i].show3D) + if(rc_canvas[canvas_id].show3D) { - VideoDriver->setRenderTarget(rc_canvas[i].texture, true, true, irr::video::SColor(255,120,120,120)); + VideoDriver->setRenderTarget(rc_canvas[canvas_id].texture, true, true, irr::video::SColor(255,120,120,120)); - if(rc_canvas[i].camera.camera) - SceneManager->setActiveCamera(rc_canvas[i].camera.camera); + if(rc_canvas[canvas_id].camera.camera) + SceneManager->setActiveCamera(rc_canvas[canvas_id].camera.camera); - rc_canvas[i].camera.update(); + rc_canvas[canvas_id].camera.update(); - VideoDriver->setViewPort(irr::core::rect(0,0,rc_canvas[i].texture->getSize().Width,rc_canvas[i].texture->getSize().Height)); + VideoDriver->setViewPort(irr::core::rect(0,0,rc_canvas[canvas_id].texture->getSize().Width,rc_canvas[canvas_id].texture->getSize().Height)); //irr::core::rect viewport(irr::core::position, rc_canvas[i].viewport.dimension); //VideoDriver->setViewPort(viewport);