diff --git a/src/runtime2/scheduler.rs b/src/runtime2/scheduler.rs index c5b857b03b90ba1183351383536cd73db2d1df77..2ed3f6eac8d91490b86f8752a7e9a99964a06d6e 100644 --- a/src/runtime2/scheduler.rs +++ b/src/runtime2/scheduler.rs @@ -46,7 +46,7 @@ impl Scheduler { // be re-executed immediately. let mut new_scheduling = CompScheduling::Immediate; while let CompScheduling::Immediate = new_scheduling { - new_scheduling = component.code.run(&mut scheduler_ctx, &mut component.private.ctx).expect("TODO: Handle error"); + new_scheduling = component.code.run(&mut scheduler_ctx, &mut component.ctx).expect("TODO: Handle error"); } // Handle the new scheduling @@ -62,7 +62,7 @@ impl Scheduler { // local utilities fn mark_component_as_sleeping(&self, key: CompKey, component: &mut RuntimeComp) { - debug_assert_eq!(key.downgrade(), component.private.ctx.id); // make sure component matches key + debug_assert_eq!(key.downgrade(), component.ctx.id); // make sure component matches key debug_assert_eq!(component.public.sleeping.load(Ordering::Acquire), false); // we're executing it, so it cannot be sleeping component.public.sleeping.store(true, Ordering::Release); @@ -80,7 +80,7 @@ impl Scheduler { fn mark_component_as_exiting(&self, sched_ctx: &SchedulerCtx, component: &mut RuntimeComp) { for port_index in 0..component.ctx.ports.len() { let port_info = &component.ctx.ports[port_index]; - if let Some((peer_id, message)) = component.code.control.mark_port_closed(port_info.id, comp_ctx) { + if let Some((peer_id, message)) = component.code.control.mark_port_closed(port_info.self_id, &mut component.ctx) { let peer_info = component.ctx.get_peer(peer_id); peer_info.handle.inbox.push(Message::Control(message));