summaryrefslogtreecommitdiffstats
path: root/cpukit/score/src/threadqenqueue.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2015-04-23 21:29:56 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2015-05-19 12:00:42 +0200
commit56729d83c99ee393c707acfcbcd7d290f97fd07d (patch)
treeef6f9e75578c133ff1300b4d86de13d67832b30c /cpukit/score/src/threadqenqueue.c
parentscore: _Thread_queue_Extract() (diff)
downloadrtems-56729d83c99ee393c707acfcbcd7d290f97fd07d.tar.bz2
score: Delete STATES_WAITING_ON_THREAD_QUEUE
Avoid the usage of the current thread state in _Thread_queue_Extract_with_return_code() since thread queues should not know anything about thread states.
Diffstat (limited to 'cpukit/score/src/threadqenqueue.c')
-rw-r--r--cpukit/score/src/threadqenqueue.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/cpukit/score/src/threadqenqueue.c b/cpukit/score/src/threadqenqueue.c
index 0e16f59c46..5f94ec99c9 100644
--- a/cpukit/score/src/threadqenqueue.c
+++ b/cpukit/score/src/threadqenqueue.c
@@ -194,13 +194,12 @@ void _Thread_queue_Extract_with_return_code(
_Thread_queue_Acquire( &lock_context );
- if ( !_States_Is_waiting_on_thread_queue( the_thread->current_state ) ) {
+ the_thread_queue = the_thread->Wait.queue;
+ if ( the_thread_queue == NULL ) {
_Thread_queue_Release( &lock_context );
return;
}
- the_thread_queue = the_thread->Wait.queue;
-
if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_FIFO ) {
_Chain_Extract_unprotected( &the_thread->Object.Node );
} else { /* must be THREAD_QUEUE_DISCIPLINE_PRIORITY */