aboutsummaryrefslogtreecommitdiffstats
path: root/os/kernel/include
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2010-08-29 06:29:01 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2010-08-29 06:29:01 +0000
commit0ea17958535e56f50064ae47a50a3cd742f88163 (patch)
treec77f98eca0ea654fdbcbd94c8f4680a73272fdc5 /os/kernel/include
parentece6ef6bf70d1b3033687dedd23a9ce4cfc4f59b (diff)
downloadChibiOS-0ea17958535e56f50064ae47a50a3cd742f88163.tar.gz
ChibiOS-0ea17958535e56f50064ae47a50a3cd742f88163.tar.bz2
ChibiOS-0ea17958535e56f50064ae47a50a3cd742f88163.zip
Fixed bug 3055329.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@2139 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/kernel/include')
-rw-r--r--os/kernel/include/chinline.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/os/kernel/include/chinline.h b/os/kernel/include/chinline.h
index a0beb7455..f41c12cc2 100644
--- a/os/kernel/include/chinline.h
+++ b/os/kernel/include/chinline.h
@@ -36,13 +36,15 @@ static INLINE void prio_insert(Thread *tp, ThreadsQueue *tqp) {
do {
cp = cp->p_next;
} while ((cp != (Thread *)tqp) && (cp->p_prio >= tp->p_prio));
- tp->p_prev = (tp->p_next = cp)->p_prev;
+ tp->p_next = cp;
+ tp->p_prev = cp->p_prev;
tp->p_prev->p_next = cp->p_prev = tp;
}
static INLINE void queue_insert(Thread *tp, ThreadsQueue *tqp) {
- tp->p_prev = (tp->p_next = (Thread *)tqp)->p_prev;
+ tp->p_next = (Thread *)tqp;
+ tp->p_prev = tqp->p_prev;
tp->p_prev->p_next = tqp->p_prev = tp;
}