summaryrefslogtreecommitdiffstats
path: root/cpukit/score/src/condition.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2021-06-10 07:44:45 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2021-06-10 07:50:00 +0200
commit6641cc87b87e0abf79138bbe0fbd303e04b547bf (patch)
treef936a51c4619aafdbd31a97ae8927d0826510941 /cpukit/score/src/condition.c
parentsysconf: Remove sysconf(515) (diff)
downloadrtems-6641cc87b87e0abf79138bbe0fbd303e04b547bf.tar.bz2
score: Fix initialization of thread queue context
Set Thread_queue_Context::timeout_absolute in _Thread_queue_Context_set_timeout_argument() to avoid using it uninitialized. The bug was introduced by a89ecaa1a94d49ddae7753d6b83923e9d2a00486.
Diffstat (limited to '')
-rw-r--r--cpukit/score/src/condition.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/cpukit/score/src/condition.c b/cpukit/score/src/condition.c
index acc72fc1a6..f4dc372d33 100644
--- a/cpukit/score/src/condition.c
+++ b/cpukit/score/src/condition.c
@@ -188,7 +188,7 @@ int _Condition_Wait_timed(
&context.Base,
_Condition_Enqueue_with_timeout
);
- _Thread_queue_Context_set_timeout_argument( &context.Base, abstime );
+ _Thread_queue_Context_set_timeout_argument( &context.Base, abstime, true );
executing = _Condition_Do_wait( _condition, _mutex, &context );
eno = STATUS_GET_POSIX( _Thread_Wait_get_status( executing ) );
_Mutex_Acquire( _mutex );
@@ -243,7 +243,7 @@ int _Condition_Wait_recursive_timed(
&context.Base,
_Condition_Enqueue_with_timeout
);
- _Thread_queue_Context_set_timeout_argument( &context.Base, abstime );
+ _Thread_queue_Context_set_timeout_argument( &context.Base, abstime, true );
nest_level = _Condition_Unnest_mutex( _mutex );
executing = _Condition_Do_wait( _condition, &_mutex->_Mutex, &context );
eno = STATUS_GET_POSIX( _Thread_Wait_get_status( executing ) );