diff options
Diffstat (limited to 'c/src/exec/score')
-rw-r--r-- | c/src/exec/score/ChangeLog | 8 | ||||
-rw-r--r-- | c/src/exec/score/include/rtems/score/coremsg.h | 3 | ||||
-rw-r--r-- | c/src/exec/score/src/coremsgsubmit.c | 2 |
3 files changed, 11 insertions, 2 deletions
diff --git a/c/src/exec/score/ChangeLog b/c/src/exec/score/ChangeLog index b60f40a988..a8f2400ae3 100644 --- a/c/src/exec/score/ChangeLog +++ b/c/src/exec/score/ChangeLog @@ -1,4 +1,12 @@ +2001-08-16 Joel Sherrill <joel@OARcorp.com> + + * include/rtems/score/coremsg.h, src/coremsgsubmit.c: Add a new + return status to account for blocking sends. Otherwise, the + caller will think that the returned message status will have + the ultimate results of the operation. If the send times out, + the final status will be in the return_code of the thread. + 2001-08-09 Joel Sherrill <joel@OARcorp.com> * include/rtems/score/coremsg.h, inline/rtems/score/coremsg.inl, diff --git a/c/src/exec/score/include/rtems/score/coremsg.h b/c/src/exec/score/include/rtems/score/coremsg.h index 0036db0f81..c53f29cea1 100644 --- a/c/src/exec/score/include/rtems/score/coremsg.h +++ b/c/src/exec/score/include/rtems/score/coremsg.h @@ -95,7 +95,8 @@ typedef enum { CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED, CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_NOWAIT, CORE_MESSAGE_QUEUE_STATUS_WAS_DELETED, - CORE_MESSAGE_QUEUE_STATUS_TIMEOUT + CORE_MESSAGE_QUEUE_STATUS_TIMEOUT, + CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_WAIT } CORE_message_queue_Status; /* diff --git a/c/src/exec/score/src/coremsgsubmit.c b/c/src/exec/score/src/coremsgsubmit.c index 94398db4c0..eabcb79ddf 100644 --- a/c/src/exec/score/src/coremsgsubmit.c +++ b/c/src/exec/score/src/coremsgsubmit.c @@ -171,5 +171,5 @@ CORE_message_queue_Status _CORE_message_queue_Submit( _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout ); } - return CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL; + return CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_WAIT; } |