summaryrefslogtreecommitdiff
path: root/cpukit/rtems/src/eventreceive.c
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/rtems/src/eventreceive.c')
-rw-r--r--cpukit/rtems/src/eventreceive.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/cpukit/rtems/src/eventreceive.c b/cpukit/rtems/src/eventreceive.c
index 49fdb2a9c0..0ff350f22e 100644
--- a/cpukit/rtems/src/eventreceive.c
+++ b/cpukit/rtems/src/eventreceive.c
@@ -22,6 +22,7 @@
#include <rtems/rtems/tasks.h>
#include <rtems/score/statesimpl.h>
#include <rtems/score/threaddispatch.h>
+#include <rtems/score/threadimpl.h>
rtems_status_code rtems_event_receive(
rtems_event_set event_in,
@@ -39,6 +40,12 @@ rtems_status_code rtems_event_receive(
if ( !_Event_sets_Is_empty( event_in ) ) {
_Thread_Disable_dispatch();
+#if defined(RTEMS_SMP)
+ if ( _Thread_Is_life_terminating( executing->Life.state ) ) {
+ _Thread_Enable_dispatch();
+ _Assert_Not_reached();
+ }
+#endif
_Event_Seize(
event_in,
option_set,