diff options
author | schmidt <douglascraigschmidt@users.noreply.github.com> | 2001-08-20 19:36:36 +0000 |
---|---|---|
committer | schmidt <douglascraigschmidt@users.noreply.github.com> | 2001-08-20 19:36:36 +0000 |
commit | 9248970dd133549fdde5888dc05e7eac308e8694 (patch) | |
tree | cdd3a9be2353ea4a037ccb13f625620ac1dc919b /ace/Message_Queue_T.cpp | |
parent | 2963e816e6b8a1b29b68a7292cbfe92fd3e00c59 (diff) | |
download | ATCD-9248970dd133549fdde5888dc05e7eac308e8694.tar.gz |
ChangeLogTag:Mon Aug 20 14:33:31 2001 Douglas C. Schmidt <schmidt@tango.doc.wustl.edu>
Diffstat (limited to 'ace/Message_Queue_T.cpp')
-rw-r--r-- | ace/Message_Queue_T.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/ace/Message_Queue_T.cpp b/ace/Message_Queue_T.cpp index 1dfba2d3ef2..306fee26771 100644 --- a/ace/Message_Queue_T.cpp +++ b/ace/Message_Queue_T.cpp @@ -715,7 +715,10 @@ ACE_Message_Queue<ACE_SYNCH_USE>::wait_not_full_cond (ACE_Guard<ACE_SYNCH_MUTEX_ result = this->not_full_cond_.acquire (timeout); if (result == -1 && errno == ETIME) - errno = EWOULDBLOCK; + { + --this->enqueue_waiters_; + errno = EWOULDBLOCK; + } // Save/restore errno. ACE_Errno_Guard error (errno); @@ -760,7 +763,10 @@ ACE_Message_Queue<ACE_SYNCH_USE>::wait_not_empty_cond (ACE_Guard<ACE_SYNCH_MUTEX result = this->not_empty_cond_.acquire (timeout); if (result == -1 && errno == ETIME) - errno = EWOULDBLOCK; + { + --this->dequeue_waiters_; + errno = EWOULDBLOCK; + } // Save/restore errno. ACE_Errno_Guard error (errno); |