fix: manager_emit should be sync

This commit is contained in:
sxyazi 2024-01-23 12:31:53 +08:00
parent 8cc18976d9
commit 0c0a0f319d
No known key found for this signature in database

View file

@ -39,19 +39,17 @@ impl Utils {
ya.set( ya.set(
"manager_emit", "manager_emit",
lua.create_async_function( lua.create_function(|_, (cmd, table, data): (String, Table, Option<Value>)| {
|_, (cmd, table, data): (String, Table, Option<Value>)| async move { let (args, named) = Self::parse_args(table)?;
let (args, named) = Self::parse_args(table)?; let mut exec = Exec { cmd, args, named, ..Default::default() };
let mut exec = Exec { cmd, args, named, ..Default::default() };
if let Some(data) = data.and_then(|v| ValueSendable::try_from(v).ok()) { if let Some(data) = data.and_then(|v| ValueSendable::try_from(v).ok()) {
exec = exec.with_data(data); exec = exec.with_data(data);
} }
emit!(Call(exec, Layer::Manager)); emit!(Call(exec, Layer::Manager));
Ok(()) Ok(())
}, })?,
)?,
)?; )?;
Ok(()) Ok(())