From d5544d304146bb0212a4cac00b26843e5c31503f Mon Sep 17 00:00:00 2001 From: Milan Hanajik Date: Thu, 8 Apr 2021 13:56:06 +0200 Subject: [PATCH] MainSeqUtils : Prevent crash when draining tanks at the end, ver. 3.1.1602 --- TBF/Properties/AssemblyInfo.cs | 4 ++-- TBF/Rig/Sequences/MainSeqUtils.cs | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/TBF/Properties/AssemblyInfo.cs b/TBF/Properties/AssemblyInfo.cs index c613c261c..b04bfa3cb 100644 --- a/TBF/Properties/AssemblyInfo.cs +++ b/TBF/Properties/AssemblyInfo.cs @@ -29,5 +29,5 @@ using System.Runtime.InteropServices; // Build Number // Revision // -[assembly: AssemblyVersion("3.1.1601.0")] -[assembly: AssemblyFileVersion("3.1.1601.0")] +[assembly: AssemblyVersion("3.1.1602.0")] +[assembly: AssemblyFileVersion("3.1.1602.0")] diff --git a/TBF/Rig/Sequences/MainSeqUtils.cs b/TBF/Rig/Sequences/MainSeqUtils.cs index ef418a72c..f4155ce5f 100644 --- a/TBF/Rig/Sequences/MainSeqUtils.cs +++ b/TBF/Rig/Sequences/MainSeqUtils.cs @@ -493,9 +493,9 @@ namespace TBF.Rig.Sequences } /// Tank emptying valves states - bool draining1 = (StateMachine.DrainValve1 != null); - bool draining2 = (StateMachine.DrainValve2 != null); - bool draining3 = (StateMachine.DrainValve3 != null); + bool draining1 = (StateMachine.DrainValve1 != null && StateMachine.Tank1 != null); + bool draining2 = (StateMachine.DrainValve2 != null && StateMachine.Tank2 != null); + bool draining3 = (StateMachine.DrainValve3 != null && StateMachine.Tank3 != null); int drainingStartTime = StateMachine.Time; @@ -517,9 +517,9 @@ namespace TBF.Rig.Sequences .EnterState(); while (StateMachine.WaitRunDevsRunOps().Contains(Event.Busy)) { } - if (draining1 && StateMachine.Tank1.IsEmpty()) draining1 = false; - if (draining2 && StateMachine.Tank2.IsEmpty()) draining2 = false; - if (draining3 && StateMachine.Tank3.IsEmpty()) draining3 = false; + if (draining1 && StateMachine.Tank1 != null && StateMachine.Tank1.IsEmpty()) draining1 = false; + if (draining2 && StateMachine.Tank2 != null && StateMachine.Tank2.IsEmpty()) draining2 = false; + if (draining3 && StateMachine.Tank3 != null && StateMachine.Tank3.IsEmpty()) draining3 = false; } /// Close all drain valves