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.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/systemc/core/scheduler.cc b/src/systemc/core/scheduler.cc
index d4d70b256..e0a270d4f 100644
--- a/src/systemc/core/scheduler.cc
+++ b/src/systemc/core/scheduler.cc
@@ -171,6 +171,10 @@ Scheduler::yield()
// If the current process needs to be manually started, start it.
if (_current && _current->needsStart()) {
_current->needsStart(false);
+ // If a process hasn't started yet, "resetting" it just starts it
+ // and signals its reset event.
+ if (_current->inReset())
+ _current->resetEvent().notify();
try {
_current->run();
} catch (...) {