summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcheapie <no-email-for-you@example.com>2024-05-14 21:18:01 -0500
committercheapie <no-email-for-you@example.com>2024-05-14 21:18:24 -0500
commitc3b125132d32ee6db61799f0216bc43a107d8803 (patch)
treed26deac46e54a35431d385a2873fed80f86b0109
parent105e65e6ba1f6e61b9cc7fca189097764bb659c3 (diff)
downloadcelevator-c3b125132d32ee6db61799f0216bc43a107d8803.tar
celevator-c3b125132d32ee6db61799f0216bc43a107d8803.tar.gz
celevator-c3b125132d32ee6db61799f0216bc43a107d8803.tar.bz2
celevator-c3b125132d32ee6db61799f0216bc43a107d8803.tar.xz
celevator-c3b125132d32ee6db61799f0216bc43a107d8803.zip
Fix hall calls sent via I/O modules to unloaded dispatchers not being reliably serviced
-rw-r--r--dispatcherfw.lua7
1 files changed, 7 insertions, 0 deletions
diff --git a/dispatcherfw.lua b/dispatcherfw.lua
index 8e6fa60..e909b19 100644
--- a/dispatcherfw.lua
+++ b/dispatcherfw.lua
@@ -791,6 +791,13 @@ elseif event.iid == "sleep" and mem.powerstate == "timing" then
interrupt(nil,"run")
mem.powerstate = "asleep"
elseif event.type == "remotemsg" then
+ if mem.powerstate == "asleep" then
+ mem.powerstate = "awake"
+ interrupt(0,"getstatus")
+ interrupt(1,"run")
+ elseif mem.powerstate == "timing" then
+ mem.powerstate = "awake"
+ end
if event.channel == "upcall" then
mem.upcalls[event.msg] = true
elseif event.channel == "dncall" then