From 28e56af503b1088bf6f62e438e9b06c9e3e1a12f Mon Sep 17 00:00:00 2001 From: Matthew Wild Date: Sat, 19 May 2012 15:39:16 +0100 Subject: modulemanager, moduleapi: Turn module.event_handlers into a multitable and track object->event->handler associations correctly (thanks Zash) --- core/moduleapi.lua | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) (limited to 'core/moduleapi.lua') diff --git a/core/moduleapi.lua b/core/moduleapi.lua index 96f1d3ea..24d29dfe 100644 --- a/core/moduleapi.lua +++ b/core/moduleapi.lua @@ -70,12 +70,7 @@ function api:fire_event(...) end function api:hook_object_event(object, event, handler, priority) - local handlers = self.event_handlers[event]; - if not handlers then - handlers = {}; - self.event_handlers[event] = handlers; - end - handlers[event] = { handler = handler, priority = priority, object = object }; + self.event_handlers:set(object, event, handler, true); return object.add_handler(event, handler, priority); end -- cgit v1.2.3