diff options
Diffstat (limited to 'src/systemc/core/process.cc')
-rw-r--r-- | src/systemc/core/process.cc | 7 |
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 |