From aac203f0d96d2936719cde4ba0d79731a6f485e3 Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Fri, 26 Nov 2021 22:26:48 +0100 Subject: mod_admin_shell: Wait for promises I've typed `>require"util.async".wait_for(...)` for the last time! --- plugins/mod_admin_shell.lua | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'plugins/mod_admin_shell.lua') diff --git a/plugins/mod_admin_shell.lua b/plugins/mod_admin_shell.lua index 83891c04..123b5aa7 100644 --- a/plugins/mod_admin_shell.lua +++ b/plugins/mod_admin_shell.lua @@ -35,6 +35,7 @@ local async = require "util.async"; local serialization = require "util.serialization"; local serialize_config = serialization.new ({ fatal = false, unquoted = true}); local time = require "util.time"; +local promise = require "util.promise"; local t_insert = table.insert; local t_concat = table.concat; @@ -173,6 +174,10 @@ local function handle_line(event) local taskok, message = chunk(); + if promise.is_promise(taskok) then + taskok, message = async.wait_for(taskok); + end + if not message then if type(taskok) ~= "string" and useglobalenv then taskok = session.serialize(taskok); -- cgit v1.2.3