diff options
author | cheapie <no-email-for-you@example.com> | 2024-05-14 21:18:01 -0500 |
---|---|---|
committer | cheapie <no-email-for-you@example.com> | 2024-05-14 21:18:24 -0500 |
commit | c3b125132d32ee6db61799f0216bc43a107d8803 (patch) | |
tree | d26deac46e54a35431d385a2873fed80f86b0109 | |
parent | 105e65e6ba1f6e61b9cc7fca189097764bb659c3 (diff) | |
download | celevator-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.lua | 7 |
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 |