From 537d37c21bf2718f4bca8b64b834e2514d817126 Mon Sep 17 00:00:00 2001 From: Robert Jelic <36573031+NoryiE@users.noreply.github.com> Date: Thu, 25 Aug 2022 23:15:00 +0200 Subject: [PATCH] Update Frame.lua quick fix for removing events --- Basalt/Frame.lua | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/Basalt/Frame.lua b/Basalt/Frame.lua index 6ba3875..55d6c65 100644 --- a/Basalt/Frame.lua +++ b/Basalt/Frame.lua @@ -3,6 +3,7 @@ local _OBJECTS = require("loadObjects") local BasaltDraw = require("basaltDraw") local utils = require("utils") local layout = require("layout") +local log = require("basaltLogs") local uuid = utils.uuid local rpairs = utils.rpairs local xmlValue = utils.getValueFromXML @@ -206,20 +207,22 @@ return function(name, parent, pTerm, basalt) end local function removeEvent(self, event, obj) - for a, b in pairs(events[event]) do - for key, value in pairs(b) do - if (value == obj) then - table.remove(events[event][a], key) - if(#events[event][a]<=0)then - events[event][a] = nil - if(self.parent~=nil)then - if(tableCount(events[event])<=0)then - activeEvents[event] = false - self.parent:removeEvent(event, self) + if(events[event]~=nil)then + for a, b in pairs(events[event]) do + for key, value in pairs(b) do + if (value == obj) then + table.remove(events[event][a], key) + if(#events[event][a]<=0)then + events[event][a] = nil + if(self.parent~=nil)then + if(tableCount(events[event])<=0)then + activeEvents[event] = false + self.parent:removeEvent(event, self) + end end end + return true; end - return true; end end end @@ -1104,4 +1107,4 @@ return function(name, parent, pTerm, basalt) end setmetatable(object, base) return object -end \ No newline at end of file +end