mirror of
https://github.com/lune-org/lune.git
synced 2025-05-04 10:43:57 +01:00
Pass arguments to coroutine.resume
This commit is contained in:
parent
0ab32ffffd
commit
b1a4b34112
1 changed files with 3 additions and 3 deletions
|
@ -117,7 +117,7 @@ fn coroutine_status<'a>(
|
|||
|
||||
fn coroutine_resume<'lua>(
|
||||
lua: &'lua Lua,
|
||||
value: LuaThreadOrTaskReference,
|
||||
(value, arguments): (LuaThreadOrTaskReference, LuaMultiValue<'lua>),
|
||||
) -> LuaResult<(bool, LuaMultiValue<'lua>)> {
|
||||
let sched = lua.app_data_ref::<&TaskScheduler>().unwrap();
|
||||
if sched.current_task().is_none() {
|
||||
|
@ -128,10 +128,10 @@ fn coroutine_resume<'lua>(
|
|||
let current = sched.current_task().unwrap();
|
||||
let result = match value {
|
||||
LuaThreadOrTaskReference::Thread(t) => {
|
||||
let task = sched.create_task(TaskKind::Instant, t, None, true)?;
|
||||
let task = sched.create_task(TaskKind::Instant, t, Some(arguments), true)?;
|
||||
sched.resume_task(task, None)
|
||||
}
|
||||
LuaThreadOrTaskReference::TaskReference(t) => sched.resume_task(t, None),
|
||||
LuaThreadOrTaskReference::TaskReference(t) => sched.resume_task(t, Some(Ok(arguments))),
|
||||
};
|
||||
sched.force_set_current_task(Some(current));
|
||||
match result {
|
||||
|
|
Loading…
Add table
Reference in a new issue