From 34151f13d6924140343150fd1e41a00c0c877668 Mon Sep 17 00:00:00 2001 From: Cardillan <122014763+cardillan@users.noreply.github.com> Date: Thu, 8 May 2025 05:26:30 +0200 Subject: [PATCH] Prevent setting counter to null using write instruction (#10774) * Prevent setting counter to null using write instruction * Reset isobj flag on counter on every instruction --- core/src/mindustry/logic/LExecutor.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/core/src/mindustry/logic/LExecutor.java b/core/src/mindustry/logic/LExecutor.java index 07721e1d4e..3b505c20f7 100644 --- a/core/src/mindustry/logic/LExecutor.java +++ b/core/src/mindustry/logic/LExecutor.java @@ -88,6 +88,7 @@ public class LExecutor{ } if(counter.numval < instructions.length){ + counter.isobj = false; instructions[(int)(counter.numval++)].run(this); } } @@ -781,10 +782,8 @@ public class LExecutor{ public void run(LExecutor exec){ if(!to.constant){ if(from.isobj){ - if(to != exec.counter){ - to.objval = from.objval; - to.isobj = true; - } + to.objval = from.objval; + to.isobj = true; }else{ to.numval = LVar.invalid(from.numval) ? 0 : from.numval; to.isobj = false;