summaryrefslogtreecommitdiff
path: root/src/systemc/core/scheduler.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/systemc/core/scheduler.cc')
-rw-r--r--src/systemc/core/scheduler.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/systemc/core/scheduler.cc b/src/systemc/core/scheduler.cc
index ec91c795a..52bf7ec31 100644
--- a/src/systemc/core/scheduler.cc
+++ b/src/systemc/core/scheduler.cc
@@ -165,6 +165,7 @@ Scheduler::yield()
Fiber::primaryFiber()->run();
} else {
_current->popListNode();
+ _current->scheduled(false);
// Switch to whatever Fiber is supposed to run this process. All
// Fibers which aren't running should be parked at this line.
_current->fiber()->run();
@@ -199,6 +200,8 @@ Scheduler::ready(Process *p)
if (_stopNow)
return;
+ p->scheduled(true);
+
if (p->procKind() == ::sc_core::SC_METHOD_PROC_)
readyListMethods.pushLast(p);
else