From df4e880d8be157896e45753e27fa929c80664749 Mon Sep 17 00:00:00 2001 From: ne-vlezay80 Date: Tue, 6 Nov 2018 11:48:44 +0300 Subject: [PATCH] Fix crash in microcontroller (#439) Add check nil var with bug from crash server. fixes #438 --- mesecons_microcontroller/init.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/mesecons_microcontroller/init.lua b/mesecons_microcontroller/init.lua index 9b1bf3b..f9ba979 100644 --- a/mesecons_microcontroller/init.lua +++ b/mesecons_microcontroller/init.lua @@ -571,6 +571,7 @@ yc.command_parsecondition = function(cond, L, eeprom) if cond:sub(i+1, i+1) == nil then break end if s == "&" then if a==nil then return nil end + if b==nil then return nil end local buf = ((a==1) and (b==1)) if buf == true then buf = "1" end if buf == false then buf = "0" end @@ -580,6 +581,7 @@ yc.command_parsecondition = function(cond, L, eeprom) end if s == "|" then if a==nil then return nil end + if b==nil then return nil end local buf = ((a == 1) or (b == 1)) if buf == true then buf = "1" end if buf == false then buf = "0" end @@ -589,6 +591,7 @@ yc.command_parsecondition = function(cond, L, eeprom) end if s == "~" then if a==nil then return nil end + if b==nil then return nil end local buf = (((a == 1) or (b == 1)) and not((a==1) and (b==1))) if buf == true then buf = "1" end if buf == false then buf = "0" end