summaryrefslogtreecommitdiff
path: root/src/systemc/core/process.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/systemc/core/process.cc')
-rw-r--r--src/systemc/core/process.cc7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/systemc/core/process.cc b/src/systemc/core/process.cc
index 3bf7ead07..93542fc00 100644
--- a/src/systemc/core/process.cc
+++ b/src/systemc/core/process.cc
@@ -206,9 +206,10 @@ Process::throw_it(ExceptionWrapperBase &exc, bool inc_kids)
if (inc_kids)
forEachKid([&exc](Process *p) { p->throw_it(exc, true); });
- // Only inject an exception into threads that have started.
- if (!_needsStart)
- injectException(exc);
+ if (_needsStart || _terminated)
+ return;
+
+ injectException(exc);
}
void